diff --git a/build.gradle b/build.gradle index 522d43034..2507b403b 100644 --- a/build.gradle +++ b/build.gradle @@ -58,21 +58,26 @@ minecraft { } repositories { - maven { - // location of the maven that hosts JEI files - name = "Progwml6 maven" - url = "https://dvs1.progwml6.com/files/maven/" - } - maven { - // location of a maven mirror for JEI files, as a fallback - name = "ModMaven" - url = "https://modmaven.k-4u.nl" - } - maven { - // for mixed mappings - name = "tterrag maven" - url = "https://maven.tterrag.com/" - } + maven { + // location of the maven that hosts JEI files + name "Progwml6 maven" + url "https://dvs1.progwml6.com/files/maven/" + } + maven { + // location of a maven mirror for JEI files, as a fallback + name "ModMaven" + url "https://modmaven.k-4u.nl" + } + maven { + //location of the maven for vazkii's mods + name "blamejared" + url "http://maven.blamejared.com/" + } + maven { + // for mixed mappings + name = "tterrag maven" + url = "https://maven.tterrag.com/" + } } dependencies { @@ -82,6 +87,10 @@ dependencies { compileOnly fg.deobf("mezz.jei:jei-1.15.2:6.0.0.2:api") // at runtime, use the full JEI jar runtimeOnly fg.deobf("mezz.jei:jei-1.15.2:6.0.0.2") + + // i'll leave this here commented for easier testing + //runtimeOnly fg.deobf("vazkii.arl:AutoRegLib:1.4-35.69") + //runtimeOnly fg.deobf("vazkii.quark:Quark:r2.0-212.984") } jar { diff --git a/src/main/java/com/simibubi/create/foundation/item/ItemDescription.java b/src/main/java/com/simibubi/create/foundation/item/ItemDescription.java index 7422a3933..554fd3a21 100644 --- a/src/main/java/com/simibubi/create/foundation/item/ItemDescription.java +++ b/src/main/java/com/simibubi/create/foundation/item/ItemDescription.java @@ -107,7 +107,7 @@ public class ItemDescription { StressImpact impactId = impact >= config.highStressImpact.get() ? StressImpact.HIGH : (impact >= config.mediumStressImpact.get() ? StressImpact.MEDIUM : StressImpact.LOW); int index = impactId.ordinal(); - String level = impactId.getColor() + makeProgressBar(3, index) + stressLevels.get(index); + String level = impactId.getAbsoluteColor() + makeProgressBar(3, index) + stressLevels.get(index); if (hasGlasses) level += " (" + impacts.get(id).get() + stressUnit + ")"; @@ -122,8 +122,8 @@ public class ItemDescription { double capacity = capacities.get(id).get(); StressImpact impactId = capacity >= config.highCapacity.get() ? StressImpact.LOW : (capacity >= config.mediumCapacity.get() ? StressImpact.MEDIUM : StressImpact.HIGH); - int index = StressImpact.values().length - 1 - impactId.ordinal(); - String level = impactId.getColor() + makeProgressBar(3, index) + stressCapacityLevels.get(index); + int index = StressImpact.values().length - 2 - impactId.ordinal(); + String level = impactId.getAbsoluteColor() + makeProgressBar(3, index) + stressCapacityLevels.get(index); if (hasGlasses) level += " (" + capacity + stressUnit + ")"; diff --git a/src/main/java/com/simibubi/create/modules/contraptions/base/GeneratingKineticTileEntity.java b/src/main/java/com/simibubi/create/modules/contraptions/base/GeneratingKineticTileEntity.java index 64d937b9b..504240e4b 100644 --- a/src/main/java/com/simibubi/create/modules/contraptions/base/GeneratingKineticTileEntity.java +++ b/src/main/java/com/simibubi/create/modules/contraptions/base/GeneratingKineticTileEntity.java @@ -1,10 +1,15 @@ package com.simibubi.create.modules.contraptions.base; +import com.simibubi.create.foundation.utility.Lang; import com.simibubi.create.modules.contraptions.KineticNetwork; import com.simibubi.create.modules.contraptions.base.IRotate.SpeedLevel; +import com.simibubi.create.modules.contraptions.goggle.IHaveGoggleInformation; import net.minecraft.tileentity.TileEntityType; import net.minecraft.util.math.BlockPos; +import net.minecraft.util.text.TextFormatting; + +import java.util.List; public abstract class GeneratingKineticTileEntity extends KineticTileEntity { @@ -42,6 +47,32 @@ public abstract class GeneratingKineticTileEntity extends KineticTileEntity { } } + @Override + public boolean addToGoggleTooltip(List tooltip, boolean isPlayerSneaking) { + boolean added = super.addToGoggleTooltip(tooltip, isPlayerSneaking); + + float stressBase = getAddedStressCapacity(); + if (stressBase != 0 && IRotate.StressImpact.isEnabled()) { + tooltip.add(spacing + Lang.translate("gui.goggles.generator_stats")); + tooltip.add(spacing + TextFormatting.GRAY + Lang.translate("tooltip.capacityProvided")); + + float speed = getTheoreticalSpeed(); + if (speed != getGeneratedSpeed() && speed != 0) + stressBase *= getGeneratedSpeed() / speed; + + speed = Math.abs(speed); + float stressTotal = stressBase * speed; + + String stressString = spacing + "%s%s" + Lang.translate("generic.unit.stress") + " " + TextFormatting.DARK_GRAY + "%s"; + tooltip.add(String.format(stressString, TextFormatting.AQUA, IHaveGoggleInformation.format(stressBase), Lang.translate("gui.goggles.base_value"))); + tooltip.add(String.format(stressString, TextFormatting.GRAY, IHaveGoggleInformation.format(stressTotal), Lang.translate("gui.goggles.at_current_speed"))); + + added = true; + } + + return added; + } + public void updateGeneratedRotation() { float speed = getGeneratedSpeed(); float prevSpeed = this.speed; @@ -122,5 +153,4 @@ public abstract class GeneratingKineticTileEntity extends KineticTileEntity { public Long createNetworkId() { return pos.toLong(); } - } diff --git a/src/main/java/com/simibubi/create/modules/contraptions/base/IRotate.java b/src/main/java/com/simibubi/create/modules/contraptions/base/IRotate.java index b9db4e91f..d28a0408c 100644 --- a/src/main/java/com/simibubi/create/modules/contraptions/base/IRotate.java +++ b/src/main/java/com/simibubi/create/modules/contraptions/base/IRotate.java @@ -1,8 +1,11 @@ package com.simibubi.create.modules.contraptions.base; import com.simibubi.create.config.AllConfigs; +import com.simibubi.create.foundation.item.ItemDescription; +import com.simibubi.create.foundation.utility.Lang; import com.simibubi.create.modules.contraptions.IWrenchable; +import com.simibubi.create.modules.contraptions.goggle.IHaveGoggleInformation; import net.minecraft.block.BlockState; import net.minecraft.util.Direction; import net.minecraft.util.Direction.Axis; @@ -12,7 +15,7 @@ import net.minecraft.world.IWorldReader; public interface IRotate extends IWrenchable { - public enum SpeedLevel { + enum SpeedLevel { NONE, MEDIUM, FAST; @@ -53,20 +56,65 @@ public interface IRotate extends IWrenchable { } } + public static String getFormattedSpeedText(float speed, boolean overstressed){ + SpeedLevel speedLevel = of(speed); + + String color; + if (overstressed) + color = TextFormatting.DARK_GRAY + "" + TextFormatting.STRIKETHROUGH; + else + color = speedLevel.getTextColor() + ""; + + String level = color + ItemDescription.makeProgressBar(3, speedLevel.ordinal()); + + if (speedLevel == SpeedLevel.MEDIUM) + level += Lang.translate("tooltip.speedRequirements.medium"); + if (speedLevel == SpeedLevel.FAST) + level += Lang.translate("tooltip.speedRequirements.high"); + + level += String.format(" (%s%s) ", IHaveGoggleInformation.format(Math.abs(speed)), Lang.translate("generic.unit.rpm")); + + return level; + } + } - public enum StressImpact { + enum StressImpact { LOW, MEDIUM, - HIGH; + HIGH, + OVERSTRESSED; - public TextFormatting getColor() { + public TextFormatting getAbsoluteColor() { return this == LOW ? TextFormatting.YELLOW : this == MEDIUM ? TextFormatting.GOLD : TextFormatting.RED; } + + public TextFormatting getRelativeColor() { + return this == LOW ? TextFormatting.GREEN : this == MEDIUM ? TextFormatting.YELLOW : this == HIGH ? TextFormatting.GOLD : TextFormatting.RED; + } + + public static StressImpact of(double stressPercent){ + if (stressPercent > 1) return StressImpact.OVERSTRESSED; + else if (stressPercent > .75d) return StressImpact.HIGH; + else if (stressPercent > .5d) return StressImpact.MEDIUM; + else return StressImpact.LOW; + } public static boolean isEnabled() { return !AllConfigs.SERVER.kinetics.disableStress.get(); } + + public static String getFormattedStressText(double stressPercent){ + StressImpact stressLevel = of(stressPercent); + TextFormatting color = stressLevel.getRelativeColor(); + + String level = color + ItemDescription.makeProgressBar(3, stressLevel.ordinal()); + level += Lang.translate("tooltip.stressImpact."+Lang.asId(stressLevel.name())); + + level += String.format(" (%s%%) ", (int) (stressPercent * 100)); + + return level; + } } public boolean hasShaftTowards(IWorldReader world, BlockPos pos, BlockState state, Direction face); diff --git a/src/main/java/com/simibubi/create/modules/contraptions/base/KineticTileEntity.java b/src/main/java/com/simibubi/create/modules/contraptions/base/KineticTileEntity.java index 688a16419..c38248877 100644 --- a/src/main/java/com/simibubi/create/modules/contraptions/base/KineticTileEntity.java +++ b/src/main/java/com/simibubi/create/modules/contraptions/base/KineticTileEntity.java @@ -10,12 +10,16 @@ import com.simibubi.create.config.AllConfigs; import com.simibubi.create.foundation.advancement.AllTriggers; import com.simibubi.create.foundation.behaviour.base.SmartTileEntity; import com.simibubi.create.foundation.behaviour.base.TileEntityBehaviour; +import com.simibubi.create.foundation.item.TooltipHelper; +import com.simibubi.create.foundation.utility.Lang; import com.simibubi.create.modules.contraptions.KineticNetwork; import com.simibubi.create.modules.contraptions.RotationPropagator; import com.simibubi.create.modules.contraptions.base.IRotate.SpeedLevel; import com.simibubi.create.modules.contraptions.base.IRotate.StressImpact; +import com.simibubi.create.modules.contraptions.goggle.IHaveGoggleInformation; import net.minecraft.block.BlockState; +import net.minecraft.client.resources.I18n; import net.minecraft.nbt.CompoundNBT; import net.minecraft.nbt.NBTUtil; import net.minecraft.tileentity.ITickableTileEntity; @@ -23,10 +27,13 @@ import net.minecraft.tileentity.TileEntity; import net.minecraft.tileentity.TileEntityType; import net.minecraft.util.ResourceLocation; import net.minecraft.util.math.BlockPos; +import net.minecraft.util.text.TextFormatting; import net.minecraft.world.World; import net.minecraftforge.common.ForgeConfigSpec.ConfigValue; -public abstract class KineticTileEntity extends SmartTileEntity implements ITickableTileEntity { +import static net.minecraft.util.text.TextFormatting.GRAY; + +public abstract class KineticTileEntity extends SmartTileEntity implements ITickableTileEntity, IHaveGoggleInformation { public @Nullable Long network; public @Nullable BlockPos source; @@ -346,6 +353,36 @@ public abstract class KineticTileEntity extends SmartTileEntity implements ITick return true; } + @Override + public boolean addToGoggleTooltip(List tooltip, boolean isPlayerSneaking) { + boolean added = false; + float stressAtBase = getStressApplied(); + + boolean notFastEnough = !isSpeedRequirementFulfilled() && getSpeed() != 0; + + if (notFastEnough) { + tooltip.addAll(TooltipHelper.cutString(spacing + Lang.translate("gui.contraptions.not_fast_enough", I18n.format(getBlockState().getBlock().getTranslationKey())), GRAY, TextFormatting.WHITE)); + added = true; + } + + if (getStressApplied() != 0 && StressImpact.isEnabled()){ + tooltip.add(spacing + Lang.translate("gui.goggles.kinetic_stats")); + tooltip.add(spacing + TextFormatting.GRAY + Lang.translate("tooltip.stressImpact")); + + float stressTotal = stressAtBase * Math.abs(getSpeed()); + + String stressString = spacing + "%s%s" + Lang.translate("generic.unit.stress") + " " + TextFormatting.DARK_GRAY + "%s"; + + tooltip.add(String.format(stressString, TextFormatting.AQUA, IHaveGoggleInformation.format(stressAtBase), Lang.translate("gui.goggles.base_value"))); + tooltip.add(String.format(stressString, TextFormatting.GRAY, IHaveGoggleInformation.format(stressTotal), Lang.translate("gui.goggles.at_current_speed"))); + + added = true; + } + + return added; + + } + public int getFlickerScore() { return flickerTally; } diff --git a/src/main/java/com/simibubi/create/modules/contraptions/goggle/GoggleOverlayRenderer.java b/src/main/java/com/simibubi/create/modules/contraptions/goggle/GoggleOverlayRenderer.java new file mode 100644 index 000000000..9a76cd34b --- /dev/null +++ b/src/main/java/com/simibubi/create/modules/contraptions/goggle/GoggleOverlayRenderer.java @@ -0,0 +1,82 @@ +package com.simibubi.create.modules.contraptions.goggle; + +import java.util.ArrayList; +import java.util.List; + +import com.mojang.blaze3d.platform.GlStateManager; +import com.simibubi.create.AllItems; +import com.simibubi.create.foundation.gui.ScreenElementRenderer; + +import net.minecraft.client.Minecraft; +import net.minecraft.client.gui.screen.Screen; +import net.minecraft.client.world.ClientWorld; +import net.minecraft.inventory.EquipmentSlotType; +import net.minecraft.item.ItemStack; +import net.minecraft.tileentity.TileEntity; +import net.minecraft.util.math.BlockPos; +import net.minecraft.util.math.BlockRayTraceResult; +import net.minecraft.util.math.RayTraceResult; +import net.minecraftforge.api.distmarker.Dist; +import net.minecraftforge.client.event.RenderGameOverlayEvent; +import net.minecraftforge.client.event.RenderGameOverlayEvent.ElementType; +import net.minecraftforge.eventbus.api.SubscribeEvent; +import net.minecraftforge.fml.common.Mod.EventBusSubscriber; + +@EventBusSubscriber(value = Dist.CLIENT) +public class GoggleOverlayRenderer { + + @SubscribeEvent + public static void lookingAtBlocksThroughGogglesShowsTooltip(RenderGameOverlayEvent.Post event) { + if (event.getType() != ElementType.HOTBAR) + return; + + RayTraceResult objectMouseOver = Minecraft.getInstance().objectMouseOver; + if (!(objectMouseOver instanceof BlockRayTraceResult)) + return; + + BlockRayTraceResult result = (BlockRayTraceResult) objectMouseOver; + Minecraft mc = Minecraft.getInstance(); + ClientWorld world = mc.world; + BlockPos pos = result.getPos(); + ItemStack goggles = mc.player.getItemStackFromSlot(EquipmentSlotType.HEAD); + TileEntity te = world.getTileEntity(pos); + + if (!AllItems.GOGGLES.typeOf(goggles)) + return; + + if (!(te instanceof IHaveGoggleInformation)) + return; + + IHaveGoggleInformation gte = (IHaveGoggleInformation) te; + + List tooltip = new ArrayList<>(); + + if (!gte.addToGoggleTooltip(tooltip, mc.player.isSneaking())) + return; + + GlStateManager.pushMatrix(); + Screen tooltipScreen = new Screen(null) { + + @Override + public void init(Minecraft mc, int width, int height) { + this.minecraft = mc; + this.itemRenderer = mc.getItemRenderer(); + this.font = mc.fontRenderer; + this.width = width; + this.height = height; + } + + }; + + tooltipScreen.init(mc, mc.mainWindow.getScaledWidth(), mc.mainWindow.getScaledHeight()); + tooltipScreen.renderTooltip(tooltip, tooltipScreen.width / 2, tooltipScreen.height / 2); + ItemStack item = goggles; + ScreenElementRenderer.render3DItem(() -> { + GlStateManager.translated(tooltipScreen.width / 2 + 10, tooltipScreen.height / 2 - 16, 0); + return item; + }); + GlStateManager.popMatrix(); + + } + +} diff --git a/src/main/java/com/simibubi/create/modules/contraptions/goggle/IHaveGoggleInformation.java b/src/main/java/com/simibubi/create/modules/contraptions/goggle/IHaveGoggleInformation.java new file mode 100644 index 000000000..10b0810e7 --- /dev/null +++ b/src/main/java/com/simibubi/create/modules/contraptions/goggle/IHaveGoggleInformation.java @@ -0,0 +1,28 @@ +package com.simibubi.create.modules.contraptions.goggle; + +import java.text.DecimalFormat; +import java.util.List; + +/* +* Implement this Interface in the TileEntity class that wants to add info to the screen +* */ +public interface IHaveGoggleInformation { + + DecimalFormat decimalFormat = new DecimalFormat("#.##"); + String spacing = " "; + + /** + * this method will be called when looking at a TileEntity that implemented this interface + * + * @return {{@code true}} if the tooltip creation was successful and should be displayed, + * or {{@code false}} if the overlay should not be displayed + * */ + default boolean addToGoggleTooltip(List tooltip, boolean isPlayerSneaking){ + return false; + } + + static String format(double d) { + return decimalFormat.format(d); + } + +} diff --git a/src/main/java/com/simibubi/create/modules/contraptions/redstone/AnalogLeverTileEntity.java b/src/main/java/com/simibubi/create/modules/contraptions/redstone/AnalogLeverTileEntity.java index 63b0bd5c2..79c4a2926 100644 --- a/src/main/java/com/simibubi/create/modules/contraptions/redstone/AnalogLeverTileEntity.java +++ b/src/main/java/com/simibubi/create/modules/contraptions/redstone/AnalogLeverTileEntity.java @@ -7,10 +7,14 @@ import com.simibubi.create.foundation.behaviour.base.SmartTileEntity; import com.simibubi.create.foundation.behaviour.base.TileEntityBehaviour; import com.simibubi.create.foundation.gui.widgets.InterpolatedChasingValue; +import com.simibubi.create.foundation.utility.Lang; +import com.simibubi.create.modules.contraptions.goggle.IHaveGoggleInformation; +import net.minecraft.block.BlockState; import net.minecraft.nbt.CompoundNBT; +import net.minecraft.tileentity.TileEntity; import net.minecraft.util.math.MathHelper; -public class AnalogLeverTileEntity extends SmartTileEntity { +public class AnalogLeverTileEntity extends SmartTileEntity implements IHaveGoggleInformation { int state = 0; int lastChange; @@ -69,6 +73,13 @@ public class AnalogLeverTileEntity extends SmartTileEntity { sendData(); } + @Override + public boolean addToGoggleTooltip(List tooltip, boolean isPlayerSneaking) { + tooltip.add(spacing + Lang.translate("tooltip.analogStrength", this.state)); + + return true; + } + public int getState() { return state; } diff --git a/src/main/java/com/simibubi/create/modules/contraptions/relays/gauge/GaugeInformationRenderer.java b/src/main/java/com/simibubi/create/modules/contraptions/relays/gauge/GaugeInformationRenderer.java deleted file mode 100644 index 363bcb789..000000000 --- a/src/main/java/com/simibubi/create/modules/contraptions/relays/gauge/GaugeInformationRenderer.java +++ /dev/null @@ -1,274 +0,0 @@ -package com.simibubi.create.modules.contraptions.relays.gauge; - -import static net.minecraft.util.text.TextFormatting.AQUA; -import static net.minecraft.util.text.TextFormatting.DARK_GRAY; -import static net.minecraft.util.text.TextFormatting.GRAY; - -import java.text.DecimalFormat; -import java.util.ArrayList; -import java.util.List; - -import com.mojang.blaze3d.systems.RenderSystem; -import com.simibubi.create.AllBlocks; -import com.simibubi.create.AllItems; -import com.simibubi.create.foundation.gui.ScreenElementRenderer; -import com.simibubi.create.foundation.item.ItemDescription; -import com.simibubi.create.foundation.item.TooltipHelper; -import com.simibubi.create.foundation.utility.Lang; -import com.simibubi.create.modules.contraptions.base.GeneratingKineticTileEntity; -import com.simibubi.create.modules.contraptions.base.IRotate.SpeedLevel; -import com.simibubi.create.modules.contraptions.base.IRotate.StressImpact; -import com.simibubi.create.modules.contraptions.base.KineticTileEntity; - -import com.simibubi.create.modules.contraptions.redstone.AnalogLeverTileEntity; -import net.minecraft.block.BlockState; -import net.minecraft.client.Minecraft; -import net.minecraft.client.gui.screen.Screen; -import net.minecraft.client.resources.I18n; -import net.minecraft.client.world.ClientWorld; -import net.minecraft.inventory.EquipmentSlotType; -import net.minecraft.item.ItemStack; -import net.minecraft.tileentity.TileEntity; -import net.minecraft.util.math.BlockPos; -import net.minecraft.util.math.BlockRayTraceResult; -import net.minecraft.util.math.RayTraceResult; -import net.minecraft.util.text.TextFormatting; -import net.minecraftforge.api.distmarker.Dist; -import net.minecraftforge.client.event.RenderGameOverlayEvent; -import net.minecraftforge.client.event.RenderGameOverlayEvent.ElementType; -import net.minecraftforge.eventbus.api.SubscribeEvent; -import net.minecraftforge.fml.common.Mod.EventBusSubscriber; - -@EventBusSubscriber(value = Dist.CLIENT) -public class GaugeInformationRenderer { - - private static DecimalFormat decimalFormat = new DecimalFormat("#.##"); - private static String spacing = " "; - - @SubscribeEvent - public static void lookingAtBlocksThroughGogglesShowsTooltip(RenderGameOverlayEvent.Post event) { - if (event.getType() != ElementType.HOTBAR) - return; - - RayTraceResult objectMouseOver = Minecraft.getInstance().objectMouseOver; - if (!(objectMouseOver instanceof BlockRayTraceResult)) - return; - - BlockRayTraceResult result = (BlockRayTraceResult) objectMouseOver; - Minecraft mc = Minecraft.getInstance(); - ClientWorld world = mc.world; - BlockPos pos = result.getPos(); - BlockState state = world.getBlockState(pos); - ItemStack goggles = mc.player.getItemStackFromSlot(EquipmentSlotType.HEAD); - TileEntity te = world.getTileEntity(pos); - boolean notFastEnough = (te instanceof KineticTileEntity) - && !((KineticTileEntity) te).isSpeedRequirementFulfilled() && ((KineticTileEntity) te).getSpeed() != 0; - - if (!AllItems.GOGGLES.typeOf(goggles) && !notFastEnough) - return; - if (mc.player.isSneaking() && !(te instanceof AnalogLeverTileEntity)) - return; - - List tooltip = new ArrayList<>(); - - if (notFastEnough) { - addSpeedRequirementMessage(state, tooltip, (KineticTileEntity) te); - goggles = AllItems.GOGGLES.asStack(); - } else if (state.getBlock() instanceof GaugeBlock) - addGaugeTooltip(state, tooltip, te); - else { - if (te instanceof GeneratingKineticTileEntity) - addGeneratorTooltip(state, tooltip, (GeneratingKineticTileEntity) te); - if (te instanceof KineticTileEntity) - addStressTooltip(state, tooltip, (KineticTileEntity) te); - if (te instanceof AnalogLeverTileEntity) - addLeverTooltip(state, tooltip, (AnalogLeverTileEntity) te); - } - - if (tooltip.isEmpty()) - return; - - RenderSystem.pushMatrix(); - Screen tooltipScreen = new Screen(null) { - - @Override - public void init(Minecraft mc, int width, int height) { - this.minecraft = mc; - this.itemRenderer = mc.getItemRenderer(); - this.font = mc.fontRenderer; - this.width = width; - this.height = height; - } - - }; - - tooltipScreen.init(mc, mc.mainWindow.getScaledWidth(), mc.mainWindow.getScaledHeight()); - tooltipScreen.renderTooltip(tooltip, tooltipScreen.width / 2, tooltipScreen.height / 2); - ItemStack item = goggles; - ScreenElementRenderer.render3DItem(() -> { - RenderSystem.translated(tooltipScreen.width / 2 + 10, tooltipScreen.height / 2 - 16, 0); - return item; - }); - RenderSystem.popMatrix(); - - } - - private static void addSpeedRequirementMessage(BlockState state, List tooltip, KineticTileEntity te) { - String spacing = " "; - tooltip.addAll(TooltipHelper.cutString(spacing - + Lang.translate("gui.contraptions.not_fast_enough", I18n.format(state.getBlock().getTranslationKey())), - GRAY, TextFormatting.WHITE)); - } - - private static void addStressTooltip(BlockState state, List tooltip, KineticTileEntity te) { - float stressApplied = te.getStressApplied(); - if (stressApplied == 0 || !StressImpact.isEnabled()) - return; - - String _kineticStatsTitle = Lang.translate("gui.goggles.kinetic_stats"); - String _stressImpact = Lang.translate("tooltip.stressImpact"); - String _atCurrentSpeed = Lang.translate("gui.goggles.at_current_speed"); - String _stressUnit = Lang.translate("generic.unit.stress"); - String _baseValue = Lang.translate("gui.goggles.base_value"); - - tooltip.add(spacing + _kineticStatsTitle); - tooltip.add(spacing + GRAY + _stressImpact); - - String addedStress = AQUA + "" + format(stressApplied) + _stressUnit + " " + DARK_GRAY + _baseValue; - String addedStressAtBase = - GRAY + "" + format(stressApplied * Math.abs(te.getSpeed())) + _stressUnit + " " + DARK_GRAY + _atCurrentSpeed; - tooltip.add(spacing + " " + addedStress); - tooltip.add(spacing + " " + addedStressAtBase); - } - - private static void addGeneratorTooltip(BlockState state, List tooltip, GeneratingKineticTileEntity te) { - float addedStressCapacity = te.getAddedStressCapacity(); - if (addedStressCapacity == 0 || !StressImpact.isEnabled()) - return; - - String _stressUnit = Lang.translate("generic.unit.stress"); - String _atCurrentSpeed = Lang.translate("gui.goggles.at_current_speed"); - String _baseValue = Lang.translate("gui.goggles.base_value"); - String _generatorStatsTitle = Lang.translate("gui.goggles.generator_stats"); - String _capacityProvided = Lang.translate("tooltip.capacityProvided"); - - float speed = te.getTheoreticalSpeed(); - if (speed != te.getGeneratedSpeed() && speed != 0) - addedStressCapacity *= (te.getGeneratedSpeed() / speed); - - tooltip.add(spacing + _generatorStatsTitle); - tooltip.add(spacing + GRAY + _capacityProvided); - - float actualSpeed = Math.abs(speed); - float relativeCap = 0; - if (actualSpeed != 0) - relativeCap = addedStressCapacity * actualSpeed; - - String addedCapacity = - AQUA + "" + format(addedStressCapacity) + _stressUnit + " " + DARK_GRAY + _baseValue; - String addedCapacityAtBase = GRAY + "" + format(relativeCap) + _stressUnit + " " + DARK_GRAY + _atCurrentSpeed; - tooltip.add(spacing + " " + addedCapacity); - tooltip.add(spacing + " " + addedCapacityAtBase); - } - - private static void addGaugeTooltip(BlockState state, List tooltip, TileEntity te) { - - String _rpmUnit = Lang.translate("generic.unit.rpm"); - String _speedGaugeTitle = Lang.translate("gui.speed_gauge.title"); - String _infoHeader = Lang.translate("gui.gauge.info_header"); - String _overStressed = Lang.translate("gui.stress_gauge.overstressed"); - String _noRotation = Lang.translate("gui.stress_gauge.no_rotation"); - String _capacity = Lang.translate("gui.stress_gauge.capacity"); - String _stressGaugeTitle = Lang.translate("gui.stress_gauge.title"); - String _stressUnit = Lang.translate("generic.unit.stress"); - String _atCurrentSpeed = Lang.translate("gui.goggles.at_current_speed"); - String _baseValue = Lang.translate("gui.goggles.base_value"); - - tooltip.add(spacing + _infoHeader); - - if (AllBlocks.STRESS_GAUGE.typeOf(state)) { - if (!(te instanceof StressGaugeTileEntity)) - return; - if (!StressImpact.isEnabled()) { - tooltip.clear(); - return; - } - StressGaugeTileEntity stressGauge = (StressGaugeTileEntity) te; - List stressLevels = Lang.translatedOptions("tooltip.stressImpact", "low", "medium", "high"); - double stress = stressGauge.getNetworkStress(); - double cap = stressGauge.getNetworkCapacity(); - double relStress = stress / (cap == 0 ? 1 : cap); - StressImpact impactId = relStress > 1 ? null - : (relStress > .75f) ? StressImpact.HIGH - : (relStress > .5f ? StressImpact.MEDIUM : StressImpact.LOW); - - TextFormatting color = TextFormatting.RED; - if (impactId == StressImpact.LOW) - color = TextFormatting.GREEN; - if (impactId == StressImpact.MEDIUM) - color = TextFormatting.YELLOW; - if (impactId == StressImpact.HIGH) - color = TextFormatting.GOLD; - - String level = TextFormatting.DARK_RED + ItemDescription.makeProgressBar(3, 2) + "" + _overStressed; - if (impactId != null) { - int index = impactId.ordinal(); - level = color + ItemDescription.makeProgressBar(3, index) + stressLevels.get(index); - } - - level += " (" + (int) (relStress * 100) + "%)"; - - float theoreticalSpeed = stressGauge.getTheoreticalSpeed(); - if (theoreticalSpeed == 0) - level = DARK_GRAY + ItemDescription.makeProgressBar(3, -1) + _noRotation; - - tooltip.add(spacing + GRAY + _stressGaugeTitle); - tooltip.add(spacing + level); - - if (theoreticalSpeed != 0) { - tooltip.add(spacing + GRAY + _capacity); - - String capacity = color + "" + format((cap - stress) / Math.abs(theoreticalSpeed)) + _stressUnit + " " - + DARK_GRAY + _baseValue; - String capacityAtBase = GRAY + "" + format(cap - stress) + _stressUnit + " " + DARK_GRAY + _atCurrentSpeed; - tooltip.add(spacing + " " + capacity); - tooltip.add(spacing + " " + capacityAtBase); - } - } - - if (AllBlocks.SPEED_GAUGE.typeOf(state)) { - if (!(te instanceof SpeedGaugeTileEntity)) - return; - SpeedGaugeTileEntity speedGauge = (SpeedGaugeTileEntity) te; - float speed = speedGauge.getTheoreticalSpeed(); - boolean overstressed = speedGauge.getSpeed() == 0 && speed != 0; - - SpeedLevel speedLevel = SpeedLevel.of(speed); - String color = speedLevel.getTextColor() + ""; - if (overstressed) - color = DARK_GRAY + "" + TextFormatting.STRIKETHROUGH; - - List speedLevels = Lang.translatedOptions("tooltip.speedRequirement", "none", "medium", "high"); - int index = speedLevel.ordinal(); - String level = color + ItemDescription.makeProgressBar(3, index) - + (speedLevel != SpeedLevel.NONE ? speedLevels.get(index) : ""); - level += " (" + format(Math.abs(speed)) + "" + _rpmUnit + ") "; - - tooltip.add(spacing + GRAY + _speedGaugeTitle); - tooltip.add(spacing + level); - - if (overstressed) - tooltip.add(spacing + TextFormatting.DARK_RED + _overStressed); - } - } - - private static void addLeverTooltip(BlockState state, List tooltip, AnalogLeverTileEntity te) { - int leverState = te.getState(); - tooltip.add(spacing + Lang.translate("tooltip.analogStrength", leverState)); - } - - private static String format(double d) { - return decimalFormat.format(d); - } - -} diff --git a/src/main/java/com/simibubi/create/modules/contraptions/relays/gauge/GaugeTileEntity.java b/src/main/java/com/simibubi/create/modules/contraptions/relays/gauge/GaugeTileEntity.java index 2bfb65ac1..aa54c501b 100644 --- a/src/main/java/com/simibubi/create/modules/contraptions/relays/gauge/GaugeTileEntity.java +++ b/src/main/java/com/simibubi/create/modules/contraptions/relays/gauge/GaugeTileEntity.java @@ -1,11 +1,17 @@ package com.simibubi.create.modules.contraptions.relays.gauge; +import com.simibubi.create.foundation.utility.Lang; import com.simibubi.create.modules.contraptions.base.KineticTileEntity; +import com.simibubi.create.modules.contraptions.goggle.IHaveGoggleInformation; +import net.minecraft.block.BlockState; import net.minecraft.nbt.CompoundNBT; +import net.minecraft.tileentity.TileEntity; import net.minecraft.tileentity.TileEntityType; -public class GaugeTileEntity extends KineticTileEntity { +import java.util.List; + +public class GaugeTileEntity extends KineticTileEntity implements IHaveGoggleInformation { public float dialTarget; public float dialState; @@ -39,4 +45,11 @@ public class GaugeTileEntity extends KineticTileEntity { dialState -= (dialState - 1) * world.rand.nextFloat(); } + @Override + public boolean addToGoggleTooltip(List tooltip, boolean isPlayerSneaking) { + tooltip.add(spacing + Lang.translate("gui.gauge.info_header")); + + return true; + } + } diff --git a/src/main/java/com/simibubi/create/modules/contraptions/relays/gauge/SpeedGaugeTileEntity.java b/src/main/java/com/simibubi/create/modules/contraptions/relays/gauge/SpeedGaugeTileEntity.java index c800acc04..5c7ff0ae4 100644 --- a/src/main/java/com/simibubi/create/modules/contraptions/relays/gauge/SpeedGaugeTileEntity.java +++ b/src/main/java/com/simibubi/create/modules/contraptions/relays/gauge/SpeedGaugeTileEntity.java @@ -4,12 +4,16 @@ import com.simibubi.create.AllTileEntities; import com.simibubi.create.config.AllConfigs; import com.simibubi.create.foundation.advancement.AllTriggers; import com.simibubi.create.foundation.utility.ColorHelper; +import com.simibubi.create.foundation.utility.Lang; import com.simibubi.create.modules.contraptions.GogglesItem; import com.simibubi.create.modules.contraptions.base.IRotate.SpeedLevel; import net.minecraft.util.math.MathHelper; +import net.minecraft.util.text.TextFormatting; -public class SpeedGaugeTileEntity extends GaugeTileEntity { +import java.util.List; + +public class SpeedGaugeTileEntity extends GaugeTileEntity{ public SpeedGaugeTileEntity() { super(AllTileEntities.SPEED_GAUGE.type); @@ -41,4 +45,15 @@ public class SpeedGaugeTileEntity extends GaugeTileEntity { markDirty(); } + @Override + public boolean addToGoggleTooltip(List tooltip, boolean isPlayerSneaking) { + super.addToGoggleTooltip(tooltip, isPlayerSneaking); + + tooltip.add(spacing + TextFormatting.GRAY + Lang.translate("gui.speed_gauge.title")); + tooltip.add(spacing + SpeedLevel.getFormattedSpeedText(speed, overStressed)); + if (overStressed) + tooltip.add(spacing + TextFormatting.DARK_RED + Lang.translate("gui.stress_gauge.overstressed")); + + return true; + } } diff --git a/src/main/java/com/simibubi/create/modules/contraptions/relays/gauge/StressGaugeTileEntity.java b/src/main/java/com/simibubi/create/modules/contraptions/relays/gauge/StressGaugeTileEntity.java index d2855acf6..c819e6d23 100644 --- a/src/main/java/com/simibubi/create/modules/contraptions/relays/gauge/StressGaugeTileEntity.java +++ b/src/main/java/com/simibubi/create/modules/contraptions/relays/gauge/StressGaugeTileEntity.java @@ -1,8 +1,14 @@ package com.simibubi.create.modules.contraptions.relays.gauge; import com.simibubi.create.AllTileEntities; +import com.simibubi.create.foundation.item.ItemDescription; import com.simibubi.create.foundation.utility.ColorHelper; +import com.simibubi.create.foundation.utility.Lang; import com.simibubi.create.modules.contraptions.base.IRotate.StressImpact; +import com.simibubi.create.modules.contraptions.goggle.IHaveGoggleInformation; +import net.minecraft.util.text.TextFormatting; + +import java.util.List; public class StressGaugeTileEntity extends GaugeTileEntity { @@ -47,6 +53,38 @@ public class StressGaugeTileEntity extends GaugeTileEntity { updateStressFromNetwork(capacity, stress); } + @Override + public boolean addToGoggleTooltip(List tooltip, boolean isPlayerSneaking) { + if (!StressImpact.isEnabled()) + return false; + + super.addToGoggleTooltip(tooltip, isPlayerSneaking); + + double capacity = getNetworkCapacity(); + double stressFraction = getNetworkStress() / (capacity == 0 ? 1 : capacity); + + tooltip.add(spacing + TextFormatting.GRAY + Lang.translate("gui.stress_gauge.title")); + + if (getTheoreticalSpeed() == 0) + tooltip.add(TextFormatting.DARK_GRAY + ItemDescription.makeProgressBar(3, -1) + Lang.translate("gui.stress_gauge.no_rotation")); + else { + tooltip.add(spacing + StressImpact.getFormattedStressText(stressFraction)); + + tooltip.add(spacing + TextFormatting.GRAY + Lang.translate("gui.stress_gauge.capacity")); + + double remainingCapacity = capacity - getNetworkStress(); + double remainingCapacityAtBase = remainingCapacity / Math.abs(getTheoreticalSpeed()); + + String capacityString = spacing + StressImpact.of(stressFraction).getRelativeColor() + "%s" + Lang.translate("generic.unit.stress") + " " + TextFormatting.DARK_GRAY + "%s"; + + tooltip.add(String.format(capacityString, IHaveGoggleInformation.format(remainingCapacityAtBase), Lang.translate("gui.goggles.base_value"))); + tooltip.add(String.format(capacityString, IHaveGoggleInformation.format(remainingCapacity), Lang.translate("gui.goggles.at_current_speed"))); + + } + + return true; + } + public float getNetworkStress() { return stress; } diff --git a/src/main/resources/assets/create/lang/en_us.json b/src/main/resources/assets/create/lang/en_us.json index 7a881dd14..d9ca6b452 100644 --- a/src/main/resources/assets/create/lang/en_us.json +++ b/src/main/resources/assets/create/lang/en_us.json @@ -601,6 +601,7 @@ "create.tooltip.stressImpact.low": "Low", "create.tooltip.stressImpact.medium": "Moderate", "create.tooltip.stressImpact.high": "High", + "create.tooltip.stressImpact.overstressed": "Overstressed", "create.tooltip.capacityProvided": "Stress Capacity: %1$s", "create.tooltip.capacityProvided.low": "Small", diff --git a/src/main/resources/data/create/recipes/compat/bop/crushing/blue_hydrangea.json b/src/main/resources/data/create/recipes/compat/bop/crushing/blue_hydrangea.json new file mode 100644 index 000000000..9f05f6e63 --- /dev/null +++ b/src/main/resources/data/create/recipes/compat/bop/crushing/blue_hydrangea.json @@ -0,0 +1,32 @@ +{ + "conditions": [ + { + "type": "forge:mod_loaded", + "modid": "biomesoplenty" + } + ], + "type": "create:crushing", + "group": "minecraft:misc", + "ingredients": [ + { + "item": "biomesoplenty:blue_hydrangea" + } + ], + "results": [ + { + "item": "minecraft:light_blue_dye", + "count": 3 + }, + { + "item": "minecraft:green_dye", + "count": 2, + "chance": 0.05 + }, + { + "item": "minecraft:light_blue_dye", + "count": 2, + "chance": 0.25 + } + ], + "processingTime": 50 +} \ No newline at end of file diff --git a/src/main/resources/data/create/recipes/compat/bop/crushing/burning_blossom.json b/src/main/resources/data/create/recipes/compat/bop/crushing/burning_blossom.json new file mode 100644 index 000000000..0b51a06de --- /dev/null +++ b/src/main/resources/data/create/recipes/compat/bop/crushing/burning_blossom.json @@ -0,0 +1,27 @@ +{ + "conditions": [ + { + "type": "forge:mod_loaded", + "modid": "biomesoplenty" + } + ], + "type": "create:crushing", + "group": "minecraft:misc", + "ingredients": [ + { + "item": "biomesoplenty:burning_blossom" + } + ], + "results": [ + { + "item": "minecraft:orange_dye", + "count": 2 + }, + { + "item": "minecraft:lime_dye", + "count": 1, + "chance": 0.1 + } + ], + "processingTime": 50 +} \ No newline at end of file diff --git a/src/main/resources/data/create/recipes/compat/bop/crushing/glowflower.json b/src/main/resources/data/create/recipes/compat/bop/crushing/glowflower.json new file mode 100644 index 000000000..fbf9d8627 --- /dev/null +++ b/src/main/resources/data/create/recipes/compat/bop/crushing/glowflower.json @@ -0,0 +1,27 @@ +{ + "conditions": [ + { + "type": "forge:mod_loaded", + "modid": "biomesoplenty" + } + ], + "type": "create:crushing", + "group": "minecraft:misc", + "ingredients": [ + { + "item": "biomesoplenty:glowflower" + } + ], + "results": [ + { + "item": "minecraft:cyan_dye", + "count": 2 + }, + { + "item": "minecraft:white_dye", + "count": 1, + "chance": 0.1 + } + ], + "processingTime": 50 +} \ No newline at end of file diff --git a/src/main/resources/data/create/recipes/compat/bop/crushing/goldenrod.json b/src/main/resources/data/create/recipes/compat/bop/crushing/goldenrod.json new file mode 100644 index 000000000..8897ea8cb --- /dev/null +++ b/src/main/resources/data/create/recipes/compat/bop/crushing/goldenrod.json @@ -0,0 +1,32 @@ +{ + "conditions": [ + { + "type": "forge:mod_loaded", + "modid": "biomesoplenty" + } + ], + "type": "create:crushing", + "group": "minecraft:misc", + "ingredients": [ + { + "item": "biomesoplenty:goldenrod" + } + ], + "results": [ + { + "item": "minecraft:yellow_dye", + "count": 3 + }, + { + "item": "minecraft:green_dye", + "count": 2, + "chance": 0.05 + }, + { + "item": "minecraft:yellow_dye", + "count": 2, + "chance": 0.25 + } + ], + "processingTime": 50 +} \ No newline at end of file diff --git a/src/main/resources/data/create/recipes/compat/bop/crushing/lavender.json b/src/main/resources/data/create/recipes/compat/bop/crushing/lavender.json new file mode 100644 index 000000000..c0cd7c2ef --- /dev/null +++ b/src/main/resources/data/create/recipes/compat/bop/crushing/lavender.json @@ -0,0 +1,27 @@ +{ + "conditions": [ + { + "type": "forge:mod_loaded", + "modid": "biomesoplenty" + } + ], + "type": "create:crushing", + "group": "minecraft:misc", + "ingredients": [ + { + "item": "biomesoplenty:lavender" + } + ], + "results": [ + { + "item": "minecraft:purple_dye", + "count": 2 + }, + { + "item": "minecraft:green_dye", + "count": 1, + "chance": 0.05 + } + ], + "processingTime": 50 +} \ No newline at end of file diff --git a/src/main/resources/data/create/recipes/compat/bop/crushing/orange_cosmos.json b/src/main/resources/data/create/recipes/compat/bop/crushing/orange_cosmos.json new file mode 100644 index 000000000..d4b691325 --- /dev/null +++ b/src/main/resources/data/create/recipes/compat/bop/crushing/orange_cosmos.json @@ -0,0 +1,27 @@ +{ + "conditions": [ + { + "type": "forge:mod_loaded", + "modid": "biomesoplenty" + } + ], + "type": "create:crushing", + "group": "minecraft:misc", + "ingredients": [ + { + "item": "biomesoplenty:orange_cosmos" + } + ], + "results": [ + { + "item": "minecraft:orange_dye", + "count": 2 + }, + { + "item": "minecraft:lime_dye", + "count": 1, + "chance": 0.1 + } + ], + "processingTime": 50 +} \ No newline at end of file diff --git a/src/main/resources/data/create/recipes/compat/bop/crushing/pink_daffodil.json b/src/main/resources/data/create/recipes/compat/bop/crushing/pink_daffodil.json new file mode 100644 index 000000000..e3f68edfd --- /dev/null +++ b/src/main/resources/data/create/recipes/compat/bop/crushing/pink_daffodil.json @@ -0,0 +1,32 @@ +{ + "conditions": [ + { + "type": "forge:mod_loaded", + "modid": "biomesoplenty" + } + ], + "type": "create:crushing", + "group": "minecraft:misc", + "ingredients": [ + { + "item": "biomesoplenty:pink_daffodil" + } + ], + "results": [ + { + "item": "minecraft:pink_dye", + "count": 2 + }, + { + "item": "minecraft:magenta_dye", + "count": 1, + "chance": 0.25 + }, + { + "item": "minecraft:cyan_dye", + "count": 1, + "chance": 0.05 + } + ], + "processingTime": 50 +} \ No newline at end of file diff --git a/src/main/resources/data/create/recipes/compat/bop/crushing/pink_hibiscus.json b/src/main/resources/data/create/recipes/compat/bop/crushing/pink_hibiscus.json new file mode 100644 index 000000000..1624966ad --- /dev/null +++ b/src/main/resources/data/create/recipes/compat/bop/crushing/pink_hibiscus.json @@ -0,0 +1,32 @@ +{ + "conditions": [ + { + "type": "forge:mod_loaded", + "modid": "biomesoplenty" + } + ], + "type": "create:crushing", + "group": "minecraft:misc", + "ingredients": [ + { + "item": "biomesoplenty:pink_hibiscus" + } + ], + "results": [ + { + "item": "minecraft:pink_dye", + "count": 2 + }, + { + "item": "minecraft:yellow_dye", + "count": 1, + "chance": 0.25 + }, + { + "item": "minecraft:green_dye", + "count": 1, + "chance": 0.05 + } + ], + "processingTime": 50 +} \ No newline at end of file diff --git a/src/main/resources/data/create/recipes/compat/bop/crushing/rose.json b/src/main/resources/data/create/recipes/compat/bop/crushing/rose.json new file mode 100644 index 000000000..8815d0f40 --- /dev/null +++ b/src/main/resources/data/create/recipes/compat/bop/crushing/rose.json @@ -0,0 +1,27 @@ +{ + "conditions": [ + { + "type": "forge:mod_loaded", + "modid": "biomesoplenty" + } + ], + "type": "create:crushing", + "group": "minecraft:misc", + "ingredients": [ + { + "item": "biomesoplenty:rose" + } + ], + "results": [ + { + "item": "minecraft:red_dye", + "count": 2 + }, + { + "item": "minecraft:green_dye", + "count": 1, + "chance": 0.05 + } + ], + "processingTime": 50 +} \ No newline at end of file diff --git a/src/main/resources/data/create/recipes/compat/bop/crushing/violet.json b/src/main/resources/data/create/recipes/compat/bop/crushing/violet.json new file mode 100644 index 000000000..4156f63e4 --- /dev/null +++ b/src/main/resources/data/create/recipes/compat/bop/crushing/violet.json @@ -0,0 +1,22 @@ +{ + "conditions": [ + { + "type": "forge:mod_loaded", + "modid": "biomesoplenty" + } + ], + "type": "create:crushing", + "group": "minecraft:misc", + "ingredients": [ + { + "item": "biomesoplenty:violet" + } + ], + "results": [ + { + "item": "minecraft:purple_dye", + "count": 2 + } + ], + "processingTime": 50 +} \ No newline at end of file diff --git a/src/main/resources/data/create/recipes/compat/bop/crushing/wildflower.json b/src/main/resources/data/create/recipes/compat/bop/crushing/wildflower.json new file mode 100644 index 000000000..77c634155 --- /dev/null +++ b/src/main/resources/data/create/recipes/compat/bop/crushing/wildflower.json @@ -0,0 +1,27 @@ +{ + "conditions": [ + { + "type": "forge:mod_loaded", + "modid": "biomesoplenty" + } + ], + "type": "create:crushing", + "group": "minecraft:misc", + "ingredients": [ + { + "item": "biomesoplenty:wildflower" + } + ], + "results": [ + { + "item": "minecraft:magenta_dye", + "count": 2 + }, + { + "item": "minecraft:lime_dye", + "count": 1, + "chance": 0.1 + } + ], + "processingTime": 50 +} \ No newline at end of file diff --git a/src/main/resources/data/create/recipes/compat/bop/crushing/wilted_lily.json b/src/main/resources/data/create/recipes/compat/bop/crushing/wilted_lily.json new file mode 100644 index 000000000..1b8ed361b --- /dev/null +++ b/src/main/resources/data/create/recipes/compat/bop/crushing/wilted_lily.json @@ -0,0 +1,22 @@ +{ + "conditions": [ + { + "type": "forge:mod_loaded", + "modid": "biomesoplenty" + } + ], + "type": "create:crushing", + "group": "minecraft:misc", + "ingredients": [ + { + "item": "biomesoplenty:wilted_lily" + } + ], + "results": [ + { + "item": "minecraft:gray_dye", + "count": 2 + } + ], + "processingTime": 50 +} \ No newline at end of file diff --git a/src/main/resources/data/create/recipes/compat/charm/crushing/nether_gold_deposit.json b/src/main/resources/data/create/recipes/compat/charm/crushing/nether_gold_deposit.json new file mode 100644 index 000000000..467b5d51b --- /dev/null +++ b/src/main/resources/data/create/recipes/compat/charm/crushing/nether_gold_deposit.json @@ -0,0 +1,32 @@ +{ + "conditions": [ + { + "type": "forge:mod_loaded", + "modid": "charm" + } + ], + "type": "create:crushing", + "group": "minecraft:misc", + "ingredients": [ + { + "item": "charm:nether_gold_deposit" + } + ], + "results": [ + { + "item": "minecraft:gold_nugget", + "count": 2 + }, + { + "item": "minecraft:gold_nugget", + "count": 4, + "chance": 0.5 + }, + { + "item": "minecraft:netherrack", + "count": 1, + "chance": 0.125 + } + ], + "processingTime": 250 +} \ No newline at end of file diff --git a/src/main/resources/data/create/recipes/compat/quark/crushing/biotite.json b/src/main/resources/data/create/recipes/compat/quark/crushing/biotite.json new file mode 100644 index 000000000..4d7c4ba5d --- /dev/null +++ b/src/main/resources/data/create/recipes/compat/quark/crushing/biotite.json @@ -0,0 +1,31 @@ +{ + "conditions": [ + { + "type": "forge:mod_loaded", + "modid": "quark" + } + ], + "type": "create:crushing", + "ingredients": [ + { + "item": "quark:biotite_ore" + } + ], + "results": [ + { + "item": "quark:biotite", + "count": 2 + }, + { + "item": "quark:biotite", + "count": 4, + "chance": 0.5 + }, + { + "item": "minecraft:end_stone", + "count": 1, + "chance": 0.125 + } + ], + "processingTime": 450 +} \ No newline at end of file diff --git a/src/main/resources/data/create/recipes/compat/quark/crushing/cactus.json b/src/main/resources/data/create/recipes/compat/quark/crushing/cactus.json new file mode 100644 index 000000000..0e007833a --- /dev/null +++ b/src/main/resources/data/create/recipes/compat/quark/crushing/cactus.json @@ -0,0 +1,27 @@ +{ + "conditions": [ + { + "type": "forge:mod_loaded", + "modid": "quark" + } + ], + "type": "create:crushing", + "group": "minecraft:misc", + "ingredients": [ + { + "item": "minecraft:cactus" + } + ], + "results": [ + { + "item": "quark:cactus_paste", + "count": 2 + }, + { + "item": "quark:cactus_paste", + "count": 1, + "chance": 0.1 + } + ], + "processingTime": 50 +} \ No newline at end of file diff --git a/src/main/resources/data/create/recipes/compat/quark/splashing/iron_plate_rusting.json b/src/main/resources/data/create/recipes/compat/quark/splashing/iron_plate_rusting.json new file mode 100644 index 000000000..ce44e3778 --- /dev/null +++ b/src/main/resources/data/create/recipes/compat/quark/splashing/iron_plate_rusting.json @@ -0,0 +1,21 @@ +{ + "conditions": [ + { + "type": "forge:mod_loaded", + "modid": "quark" + } + ], + "type": "create:splashing", + "group": "minecraft:misc", + "ingredients": [ + { + "item": "quark:iron_plate" + } + ], + "results": [ + { + "item": "quark:rusty_iron_plate", + "count": 1 + } + ] +} \ No newline at end of file diff --git a/src/main/resources/data/create/recipes/compat/readyyourshovels/splashing/rys_spashing_smoothing.json b/src/main/resources/data/create/recipes/compat/readyyourshovels/splashing/rys_spashing_smoothing.json new file mode 100644 index 000000000..c150bffc7 --- /dev/null +++ b/src/main/resources/data/create/recipes/compat/readyyourshovels/splashing/rys_spashing_smoothing.json @@ -0,0 +1,21 @@ +{ + "conditions": [ + { + "type": "forge:mod_loaded", + "modid": "rys" + } + ], + "type": "create:splashing", + "group": "minecraft:misc", + "ingredients": [ + { + "item": "rys:tough_dirt" + } + ], + "results": [ + { + "item": "rys:smooth_dirt", + "count": 1 + } + ] +} \ No newline at end of file diff --git a/src/main/resources/data/create/recipes/compat/readyyourshovels/splashing/rys_splashing_clay_deposit.json b/src/main/resources/data/create/recipes/compat/readyyourshovels/splashing/rys_splashing_clay_deposit.json new file mode 100644 index 000000000..604d8d847 --- /dev/null +++ b/src/main/resources/data/create/recipes/compat/readyyourshovels/splashing/rys_splashing_clay_deposit.json @@ -0,0 +1,31 @@ +{ + "conditions": [ + { + "type": "forge:mod_loaded", + "modid": "rys" + } + ], + "type": "create:splashing", + "group": "minecraft:misc", + "ingredients": [ + { + "item": "rys:clay_deposit" + } + ], + "results": [ + { + "item": "minecraft:clay_ball", + "count": 2 + }, + { + "item": "minecraft:clay_ball", + "count": 4, + "chance": 0.5 + }, + { + "item": "minecraft:dirt", + "count": 1, + "chance": 0.125 + } + ] +} \ No newline at end of file diff --git a/src/main/resources/data/create/recipes/compat/readyyourshovels/splashing/rys_splashing_gold_deposit.json b/src/main/resources/data/create/recipes/compat/readyyourshovels/splashing/rys_splashing_gold_deposit.json new file mode 100644 index 000000000..f9ddf4a85 --- /dev/null +++ b/src/main/resources/data/create/recipes/compat/readyyourshovels/splashing/rys_splashing_gold_deposit.json @@ -0,0 +1,31 @@ +{ + "conditions": [ + { + "type": "forge:mod_loaded", + "modid": "rys" + } + ], + "type": "create:splashing", + "group": "minecraft:misc", + "ingredients": [ + { + "item": "rys:gold_deposit" + } + ], + "results": [ + { + "item": "minecraft:gold_nugget", + "count": 2 + }, + { + "item": "minecraft:gold_nugget", + "count": 4, + "chance": 0.5 + }, + { + "item": "minecraft:dirt", + "count": 1, + "chance": 0.125 + } + ] +} \ No newline at end of file diff --git a/src/main/resources/data/create/recipes/compat/readyyourshovels/splashing/rys_splashing_iron_deposit.json b/src/main/resources/data/create/recipes/compat/readyyourshovels/splashing/rys_splashing_iron_deposit.json new file mode 100644 index 000000000..f3d6d707c --- /dev/null +++ b/src/main/resources/data/create/recipes/compat/readyyourshovels/splashing/rys_splashing_iron_deposit.json @@ -0,0 +1,31 @@ +{ + "conditions": [ + { + "type": "forge:mod_loaded", + "modid": "rys" + } + ], + "type": "create:splashing", + "group": "minecraft:misc", + "ingredients": [ + { + "item": "rys:iron_deposit" + } + ], + "results": [ + { + "item": "minecraft:iron_nugget", + "count": 2 + }, + { + "item": "minecraft:iron_nugget", + "count": 4, + "chance": 0.5 + }, + { + "item": "minecraft:dirt", + "count": 1, + "chance": 0.125 + } + ] +} \ No newline at end of file diff --git a/src/main/resources/data/create/recipes/compat/readyyourshovels/splashing/rys_splashing_peat_deposit.json b/src/main/resources/data/create/recipes/compat/readyyourshovels/splashing/rys_splashing_peat_deposit.json new file mode 100644 index 000000000..eeb3a6710 --- /dev/null +++ b/src/main/resources/data/create/recipes/compat/readyyourshovels/splashing/rys_splashing_peat_deposit.json @@ -0,0 +1,31 @@ +{ + "conditions": [ + { + "type": "forge:mod_loaded", + "modid": "rys" + } + ], + "type": "create:splashing", + "group": "minecraft:misc", + "ingredients": [ + { + "item": "rys:peat_deposit" + } + ], + "results": [ + { + "item": "rys:peat", + "count": 2 + }, + { + "item": "rys:peat", + "count": 4, + "chance": 0.5 + }, + { + "item": "minecraft:dirt", + "count": 1, + "chance": 0.125 + } + ] +} \ No newline at end of file diff --git a/src/main/resources/data/create/recipes/compat/silentsgems/crushing/agate_ore.json b/src/main/resources/data/create/recipes/compat/silentsgems/crushing/agate_ore.json new file mode 100644 index 000000000..44f369478 --- /dev/null +++ b/src/main/resources/data/create/recipes/compat/silentsgems/crushing/agate_ore.json @@ -0,0 +1,32 @@ +{ + "conditions": [ + { + "type": "forge:mod_loaded", + "modid": "silentgems" + } + ], + "type": "create:crushing", + "group": "minecraft:misc", + "ingredients": [ + { + "item": "silentgems:agate_ore" + } + ], + "results": [ + { + "item": "silentgems:agate", + "count": 2 + }, + { + "item": "silentgems:agate", + "count": 1, + "chance": 0.25 + }, + { + "item": "minecraft:cobblestone", + "count": 1, + "chance": 0.12 + } + ], + "processingTime": 350 +} \ No newline at end of file diff --git a/src/main/resources/data/create/recipes/compat/silentsgems/crushing/alexandrite_ore.json b/src/main/resources/data/create/recipes/compat/silentsgems/crushing/alexandrite_ore.json new file mode 100644 index 000000000..50f3a3be7 --- /dev/null +++ b/src/main/resources/data/create/recipes/compat/silentsgems/crushing/alexandrite_ore.json @@ -0,0 +1,32 @@ +{ + "conditions": [ + { + "type": "forge:mod_loaded", + "modid": "silentgems" + } + ], + "type": "create:crushing", + "group": "minecraft:misc", + "ingredients": [ + { + "item": "silentgems:alexandrite_ore" + } + ], + "results": [ + { + "item": "silentgems:alexandrite", + "count": 2 + }, + { + "item": "silentgems:alexandrite", + "count": 1, + "chance": 0.25 + }, + { + "item": "minecraft:netherrack", + "count": 1, + "chance": 0.12 + } + ], + "processingTime": 350 +} \ No newline at end of file diff --git a/src/main/resources/data/create/recipes/compat/silentsgems/crushing/amber_ore.json b/src/main/resources/data/create/recipes/compat/silentsgems/crushing/amber_ore.json new file mode 100644 index 000000000..08a1c183b --- /dev/null +++ b/src/main/resources/data/create/recipes/compat/silentsgems/crushing/amber_ore.json @@ -0,0 +1,32 @@ +{ + "conditions": [ + { + "type": "forge:mod_loaded", + "modid": "silentgems" + } + ], + "type": "create:crushing", + "group": "minecraft:misc", + "ingredients": [ + { + "item": "silentgems:amber_ore" + } + ], + "results": [ + { + "item": "silentgems:amber", + "count": 2 + }, + { + "item": "silentgems:amber", + "count": 1, + "chance": 0.25 + }, + { + "item": "minecraft:cobblestone", + "count": 1, + "chance": 0.12 + } + ], + "processingTime": 350 +} \ No newline at end of file diff --git a/src/main/resources/data/create/recipes/compat/silentsgems/crushing/amethyst_ore.json b/src/main/resources/data/create/recipes/compat/silentsgems/crushing/amethyst_ore.json new file mode 100644 index 000000000..221d59bcf --- /dev/null +++ b/src/main/resources/data/create/recipes/compat/silentsgems/crushing/amethyst_ore.json @@ -0,0 +1,32 @@ +{ + "conditions": [ + { + "type": "forge:mod_loaded", + "modid": "silentgems" + } + ], + "type": "create:crushing", + "group": "minecraft:misc", + "ingredients": [ + { + "item": "silentgems:amethyst_ore" + } + ], + "results": [ + { + "item": "silentgems:amethyst", + "count": 2 + }, + { + "item": "silentgems:amethyst", + "count": 1, + "chance": 0.25 + }, + { + "item": "minecraft:cobblestone", + "count": 1, + "chance": 0.12 + } + ], + "processingTime": 350 +} \ No newline at end of file diff --git a/src/main/resources/data/create/recipes/compat/silentsgems/crushing/ametrine_ore.json b/src/main/resources/data/create/recipes/compat/silentsgems/crushing/ametrine_ore.json new file mode 100644 index 000000000..575c7af78 --- /dev/null +++ b/src/main/resources/data/create/recipes/compat/silentsgems/crushing/ametrine_ore.json @@ -0,0 +1,32 @@ +{ + "conditions": [ + { + "type": "forge:mod_loaded", + "modid": "silentgems" + } + ], + "type": "create:crushing", + "group": "minecraft:misc", + "ingredients": [ + { + "item": "silentgems:ametrine_ore" + } + ], + "results": [ + { + "item": "silentgems:ametrine", + "count": 2 + }, + { + "item": "silentgems:ametrine", + "count": 1, + "chance": 0.25 + }, + { + "item": "minecraft:netherrack", + "count": 1, + "chance": 0.12 + } + ], + "processingTime": 350 +} \ No newline at end of file diff --git a/src/main/resources/data/create/recipes/compat/silentsgems/crushing/ammolite_ore.json b/src/main/resources/data/create/recipes/compat/silentsgems/crushing/ammolite_ore.json new file mode 100644 index 000000000..3416b40ef --- /dev/null +++ b/src/main/resources/data/create/recipes/compat/silentsgems/crushing/ammolite_ore.json @@ -0,0 +1,32 @@ +{ + "conditions": [ + { + "type": "forge:mod_loaded", + "modid": "silentgems" + } + ], + "type": "create:crushing", + "group": "minecraft:misc", + "ingredients": [ + { + "item": "silentgems:ammolite_ore" + } + ], + "results": [ + { + "item": "silentgems:ammolite", + "count": 2 + }, + { + "item": "silentgems:ammolite", + "count": 1, + "chance": 0.25 + }, + { + "item": "minecraft:end_stone", + "count": 1, + "chance": 0.12 + } + ], + "processingTime": 350 +} \ No newline at end of file diff --git a/src/main/resources/data/create/recipes/compat/silentsgems/crushing/apatite_ore.json b/src/main/resources/data/create/recipes/compat/silentsgems/crushing/apatite_ore.json new file mode 100644 index 000000000..1b6c59fb7 --- /dev/null +++ b/src/main/resources/data/create/recipes/compat/silentsgems/crushing/apatite_ore.json @@ -0,0 +1,32 @@ +{ + "conditions": [ + { + "type": "forge:mod_loaded", + "modid": "silentgems" + } + ], + "type": "create:crushing", + "group": "minecraft:misc", + "ingredients": [ + { + "item": "silentgems:apatite_ore" + } + ], + "results": [ + { + "item": "silentgems:apatite", + "count": 2 + }, + { + "item": "silentgems:apatite", + "count": 1, + "chance": 0.25 + }, + { + "item": "minecraft:end_stone", + "count": 1, + "chance": 0.12 + } + ], + "processingTime": 350 +} \ No newline at end of file diff --git a/src/main/resources/data/create/recipes/compat/silentsgems/crushing/aquamarine_ore.json b/src/main/resources/data/create/recipes/compat/silentsgems/crushing/aquamarine_ore.json new file mode 100644 index 000000000..9e6692fee --- /dev/null +++ b/src/main/resources/data/create/recipes/compat/silentsgems/crushing/aquamarine_ore.json @@ -0,0 +1,32 @@ +{ + "conditions": [ + { + "type": "forge:mod_loaded", + "modid": "silentgems" + } + ], + "type": "create:crushing", + "group": "minecraft:misc", + "ingredients": [ + { + "item": "silentgems:aquamarine_ore" + } + ], + "results": [ + { + "item": "silentgems:aquamarine", + "count": 2 + }, + { + "item": "silentgems:aquamarine", + "count": 1, + "chance": 0.25 + }, + { + "item": "minecraft:cobblestone", + "count": 1, + "chance": 0.12 + } + ], + "processingTime": 350 +} \ No newline at end of file diff --git a/src/main/resources/data/create/recipes/compat/silentsgems/crushing/benitoite_ore.json b/src/main/resources/data/create/recipes/compat/silentsgems/crushing/benitoite_ore.json new file mode 100644 index 000000000..ae412ba08 --- /dev/null +++ b/src/main/resources/data/create/recipes/compat/silentsgems/crushing/benitoite_ore.json @@ -0,0 +1,32 @@ +{ + "conditions": [ + { + "type": "forge:mod_loaded", + "modid": "silentgems" + } + ], + "type": "create:crushing", + "group": "minecraft:misc", + "ingredients": [ + { + "item": "silentgems:benitoite_ore" + } + ], + "results": [ + { + "item": "silentgems:benitoite", + "count": 2 + }, + { + "item": "silentgems:benitoite", + "count": 1, + "chance": 0.25 + }, + { + "item": "minecraft:netherrack", + "count": 1, + "chance": 0.12 + } + ], + "processingTime": 350 +} \ No newline at end of file diff --git a/src/main/resources/data/create/recipes/compat/silentsgems/crushing/black_diamond_ore.json b/src/main/resources/data/create/recipes/compat/silentsgems/crushing/black_diamond_ore.json new file mode 100644 index 000000000..5027dd583 --- /dev/null +++ b/src/main/resources/data/create/recipes/compat/silentsgems/crushing/black_diamond_ore.json @@ -0,0 +1,32 @@ +{ + "conditions": [ + { + "type": "forge:mod_loaded", + "modid": "silentgems" + } + ], + "type": "create:crushing", + "group": "minecraft:misc", + "ingredients": [ + { + "item": "silentgems:black_diamond_ore" + } + ], + "results": [ + { + "item": "silentgems:black_diamond", + "count": 2 + }, + { + "item": "silentgems:black_diamond", + "count": 1, + "chance": 0.25 + }, + { + "item": "minecraft:netherrack", + "count": 1, + "chance": 0.12 + } + ], + "processingTime": 350 +} \ No newline at end of file diff --git a/src/main/resources/data/create/recipes/compat/silentsgems/crushing/carnelian_ore.json b/src/main/resources/data/create/recipes/compat/silentsgems/crushing/carnelian_ore.json new file mode 100644 index 000000000..6109c635a --- /dev/null +++ b/src/main/resources/data/create/recipes/compat/silentsgems/crushing/carnelian_ore.json @@ -0,0 +1,32 @@ +{ + "conditions": [ + { + "type": "forge:mod_loaded", + "modid": "silentgems" + } + ], + "type": "create:crushing", + "group": "minecraft:misc", + "ingredients": [ + { + "item": "silentgems:carnelian_ore" + } + ], + "results": [ + { + "item": "silentgems:carnelian", + "count": 2 + }, + { + "item": "silentgems:carnelian", + "count": 1, + "chance": 0.25 + }, + { + "item": "minecraft:netherrack", + "count": 1, + "chance": 0.12 + } + ], + "processingTime": 350 +} \ No newline at end of file diff --git a/src/main/resources/data/create/recipes/compat/silentsgems/crushing/cats_eye_ore.json b/src/main/resources/data/create/recipes/compat/silentsgems/crushing/cats_eye_ore.json new file mode 100644 index 000000000..202a041ef --- /dev/null +++ b/src/main/resources/data/create/recipes/compat/silentsgems/crushing/cats_eye_ore.json @@ -0,0 +1,32 @@ +{ + "conditions": [ + { + "type": "forge:mod_loaded", + "modid": "silentgems" + } + ], + "type": "create:crushing", + "group": "minecraft:misc", + "ingredients": [ + { + "item": "silentgems:cats_eye_ore" + } + ], + "results": [ + { + "item": "silentgems:cats_eye", + "count": 2 + }, + { + "item": "silentgems:cats_eye", + "count": 1, + "chance": 0.25 + }, + { + "item": "minecraft:end_stone", + "count": 1, + "chance": 0.12 + } + ], + "processingTime": 350 +} \ No newline at end of file diff --git a/src/main/resources/data/create/recipes/compat/silentsgems/crushing/chrysoprase_ore.json b/src/main/resources/data/create/recipes/compat/silentsgems/crushing/chrysoprase_ore.json new file mode 100644 index 000000000..66167cf6a --- /dev/null +++ b/src/main/resources/data/create/recipes/compat/silentsgems/crushing/chrysoprase_ore.json @@ -0,0 +1,32 @@ +{ + "conditions": [ + { + "type": "forge:mod_loaded", + "modid": "silentgems" + } + ], + "type": "create:crushing", + "group": "minecraft:misc", + "ingredients": [ + { + "item": "silentgems:chrysoprase_ore" + } + ], + "results": [ + { + "item": "silentgems:chrysoprase", + "count": 2 + }, + { + "item": "silentgems:chrysoprase", + "count": 1, + "chance": 0.25 + }, + { + "item": "minecraft:end_stone", + "count": 1, + "chance": 0.12 + } + ], + "processingTime": 350 +} \ No newline at end of file diff --git a/src/main/resources/data/create/recipes/compat/silentsgems/crushing/citrine_ore.json b/src/main/resources/data/create/recipes/compat/silentsgems/crushing/citrine_ore.json new file mode 100644 index 000000000..091162b6f --- /dev/null +++ b/src/main/resources/data/create/recipes/compat/silentsgems/crushing/citrine_ore.json @@ -0,0 +1,32 @@ +{ + "conditions": [ + { + "type": "forge:mod_loaded", + "modid": "silentgems" + } + ], + "type": "create:crushing", + "group": "minecraft:misc", + "ingredients": [ + { + "item": "silentgems:citrine_ore" + } + ], + "results": [ + { + "item": "silentgems:citrine", + "count": 2 + }, + { + "item": "silentgems:citrine", + "count": 1, + "chance": 0.25 + }, + { + "item": "minecraft:netherrack", + "count": 1, + "chance": 0.12 + } + ], + "processingTime": 350 +} \ No newline at end of file diff --git a/src/main/resources/data/create/recipes/compat/silentsgems/crushing/coral_ore.json b/src/main/resources/data/create/recipes/compat/silentsgems/crushing/coral_ore.json new file mode 100644 index 000000000..dc53a7e78 --- /dev/null +++ b/src/main/resources/data/create/recipes/compat/silentsgems/crushing/coral_ore.json @@ -0,0 +1,32 @@ +{ + "conditions": [ + { + "type": "forge:mod_loaded", + "modid": "silentgems" + } + ], + "type": "create:crushing", + "group": "minecraft:misc", + "ingredients": [ + { + "item": "silentgems:coral_ore" + } + ], + "results": [ + { + "item": "silentgems:coral", + "count": 2 + }, + { + "item": "silentgems:coral", + "count": 1, + "chance": 0.25 + }, + { + "item": "minecraft:end_stone", + "count": 1, + "chance": 0.12 + } + ], + "processingTime": 350 +} \ No newline at end of file diff --git a/src/main/resources/data/create/recipes/compat/silentsgems/crushing/euclase_ore.json b/src/main/resources/data/create/recipes/compat/silentsgems/crushing/euclase_ore.json new file mode 100644 index 000000000..4964d1484 --- /dev/null +++ b/src/main/resources/data/create/recipes/compat/silentsgems/crushing/euclase_ore.json @@ -0,0 +1,32 @@ +{ + "conditions": [ + { + "type": "forge:mod_loaded", + "modid": "silentgems" + } + ], + "type": "create:crushing", + "group": "minecraft:misc", + "ingredients": [ + { + "item": "silentgems:euclase_ore" + } + ], + "results": [ + { + "item": "silentgems:euclase", + "count": 2 + }, + { + "item": "silentgems:euclase", + "count": 1, + "chance": 0.25 + }, + { + "item": "minecraft:netherrack", + "count": 1, + "chance": 0.12 + } + ], + "processingTime": 350 +} \ No newline at end of file diff --git a/src/main/resources/data/create/recipes/compat/silentsgems/crushing/fluorite_ore.json b/src/main/resources/data/create/recipes/compat/silentsgems/crushing/fluorite_ore.json new file mode 100644 index 000000000..4a832e6e4 --- /dev/null +++ b/src/main/resources/data/create/recipes/compat/silentsgems/crushing/fluorite_ore.json @@ -0,0 +1,32 @@ +{ + "conditions": [ + { + "type": "forge:mod_loaded", + "modid": "silentgems" + } + ], + "type": "create:crushing", + "group": "minecraft:misc", + "ingredients": [ + { + "item": "silentgems:fluorite_ore" + } + ], + "results": [ + { + "item": "silentgems:fluorite", + "count": 2 + }, + { + "item": "silentgems:fluorite", + "count": 1, + "chance": 0.25 + }, + { + "item": "minecraft:end_stone", + "count": 1, + "chance": 0.12 + } + ], + "processingTime": 350 +} \ No newline at end of file diff --git a/src/main/resources/data/create/recipes/compat/silentsgems/crushing/garnet_ore.json b/src/main/resources/data/create/recipes/compat/silentsgems/crushing/garnet_ore.json new file mode 100644 index 000000000..142238304 --- /dev/null +++ b/src/main/resources/data/create/recipes/compat/silentsgems/crushing/garnet_ore.json @@ -0,0 +1,32 @@ +{ + "conditions": [ + { + "type": "forge:mod_loaded", + "modid": "silentgems" + } + ], + "type": "create:crushing", + "group": "minecraft:misc", + "ingredients": [ + { + "item": "silentgems:garnet_ore" + } + ], + "results": [ + { + "item": "silentgems:garnet", + "count": 2 + }, + { + "item": "silentgems:garnet", + "count": 1, + "chance": 0.25 + }, + { + "item": "minecraft:cobblestone", + "count": 1, + "chance": 0.12 + } + ], + "processingTime": 350 +} \ No newline at end of file diff --git a/src/main/resources/data/create/recipes/compat/silentsgems/crushing/green_sapphire_ore.json b/src/main/resources/data/create/recipes/compat/silentsgems/crushing/green_sapphire_ore.json new file mode 100644 index 000000000..de81517bc --- /dev/null +++ b/src/main/resources/data/create/recipes/compat/silentsgems/crushing/green_sapphire_ore.json @@ -0,0 +1,32 @@ +{ + "conditions": [ + { + "type": "forge:mod_loaded", + "modid": "silentgems" + } + ], + "type": "create:crushing", + "group": "minecraft:misc", + "ingredients": [ + { + "item": "silentgems:green_sapphire_ore" + } + ], + "results": [ + { + "item": "silentgems:green_sapphire", + "count": 2 + }, + { + "item": "silentgems:green_sapphire", + "count": 1, + "chance": 0.25 + }, + { + "item": "minecraft:cobblestone", + "count": 1, + "chance": 0.12 + } + ], + "processingTime": 350 +} \ No newline at end of file diff --git a/src/main/resources/data/create/recipes/compat/silentsgems/crushing/heliodor_ore.json b/src/main/resources/data/create/recipes/compat/silentsgems/crushing/heliodor_ore.json new file mode 100644 index 000000000..cba22cae5 --- /dev/null +++ b/src/main/resources/data/create/recipes/compat/silentsgems/crushing/heliodor_ore.json @@ -0,0 +1,32 @@ +{ + "conditions": [ + { + "type": "forge:mod_loaded", + "modid": "silentgems" + } + ], + "type": "create:crushing", + "group": "minecraft:misc", + "ingredients": [ + { + "item": "silentgems:heliodor_ore" + } + ], + "results": [ + { + "item": "silentgems:heliodor", + "count": 2 + }, + { + "item": "silentgems:heliodor", + "count": 1, + "chance": 0.25 + }, + { + "item": "minecraft:cobblestone", + "count": 1, + "chance": 0.12 + } + ], + "processingTime": 350 +} \ No newline at end of file diff --git a/src/main/resources/data/create/recipes/compat/silentsgems/crushing/iolite_ore.json b/src/main/resources/data/create/recipes/compat/silentsgems/crushing/iolite_ore.json new file mode 100644 index 000000000..f2395750e --- /dev/null +++ b/src/main/resources/data/create/recipes/compat/silentsgems/crushing/iolite_ore.json @@ -0,0 +1,32 @@ +{ + "conditions": [ + { + "type": "forge:mod_loaded", + "modid": "silentgems" + } + ], + "type": "create:crushing", + "group": "minecraft:misc", + "ingredients": [ + { + "item": "silentgems:iolite_ore" + } + ], + "results": [ + { + "item": "silentgems:iolite", + "count": 2 + }, + { + "item": "silentgems:iolite", + "count": 1, + "chance": 0.25 + }, + { + "item": "minecraft:netherrack", + "count": 1, + "chance": 0.12 + } + ], + "processingTime": 350 +} \ No newline at end of file diff --git a/src/main/resources/data/create/recipes/compat/silentsgems/crushing/jade_ore.json b/src/main/resources/data/create/recipes/compat/silentsgems/crushing/jade_ore.json new file mode 100644 index 000000000..29c98ec5b --- /dev/null +++ b/src/main/resources/data/create/recipes/compat/silentsgems/crushing/jade_ore.json @@ -0,0 +1,32 @@ +{ + "conditions": [ + { + "type": "forge:mod_loaded", + "modid": "silentgems" + } + ], + "type": "create:crushing", + "group": "minecraft:misc", + "ingredients": [ + { + "item": "silentgems:jade_ore" + } + ], + "results": [ + { + "item": "silentgems:jade", + "count": 2 + }, + { + "item": "silentgems:jade", + "count": 1, + "chance": 0.25 + }, + { + "item": "minecraft:end_stone", + "count": 1, + "chance": 0.12 + } + ], + "processingTime": 350 +} \ No newline at end of file diff --git a/src/main/resources/data/create/recipes/compat/silentsgems/crushing/jasper_ore.json b/src/main/resources/data/create/recipes/compat/silentsgems/crushing/jasper_ore.json new file mode 100644 index 000000000..9a4491b9b --- /dev/null +++ b/src/main/resources/data/create/recipes/compat/silentsgems/crushing/jasper_ore.json @@ -0,0 +1,32 @@ +{ + "conditions": [ + { + "type": "forge:mod_loaded", + "modid": "silentgems" + } + ], + "type": "create:crushing", + "group": "minecraft:misc", + "ingredients": [ + { + "item": "silentgems:jasper_ore" + } + ], + "results": [ + { + "item": "silentgems:jasper", + "count": 2 + }, + { + "item": "silentgems:jasper", + "count": 1, + "chance": 0.25 + }, + { + "item": "minecraft:netherrack", + "count": 1, + "chance": 0.12 + } + ], + "processingTime": 350 +} \ No newline at end of file diff --git a/src/main/resources/data/create/recipes/compat/silentsgems/crushing/kunzite_ore.json b/src/main/resources/data/create/recipes/compat/silentsgems/crushing/kunzite_ore.json new file mode 100644 index 000000000..a71ee79c9 --- /dev/null +++ b/src/main/resources/data/create/recipes/compat/silentsgems/crushing/kunzite_ore.json @@ -0,0 +1,32 @@ +{ + "conditions": [ + { + "type": "forge:mod_loaded", + "modid": "silentgems" + } + ], + "type": "create:crushing", + "group": "minecraft:misc", + "ingredients": [ + { + "item": "silentgems:kunzite_ore" + } + ], + "results": [ + { + "item": "silentgems:kunzite", + "count": 2 + }, + { + "item": "silentgems:kunzite", + "count": 1, + "chance": 0.25 + }, + { + "item": "minecraft:end_stone", + "count": 1, + "chance": 0.12 + } + ], + "processingTime": 350 +} \ No newline at end of file diff --git a/src/main/resources/data/create/recipes/compat/silentsgems/crushing/kyanite_ore.json b/src/main/resources/data/create/recipes/compat/silentsgems/crushing/kyanite_ore.json new file mode 100644 index 000000000..8082a593e --- /dev/null +++ b/src/main/resources/data/create/recipes/compat/silentsgems/crushing/kyanite_ore.json @@ -0,0 +1,32 @@ +{ + "conditions": [ + { + "type": "forge:mod_loaded", + "modid": "silentgems" + } + ], + "type": "create:crushing", + "group": "minecraft:misc", + "ingredients": [ + { + "item": "silentgems:kyanite_ore" + } + ], + "results": [ + { + "item": "silentgems:kyanite", + "count": 2 + }, + { + "item": "silentgems:kyanite", + "count": 1, + "chance": 0.25 + }, + { + "item": "minecraft:end_stone", + "count": 1, + "chance": 0.12 + } + ], + "processingTime": 350 +} \ No newline at end of file diff --git a/src/main/resources/data/create/recipes/compat/silentsgems/crushing/lepidolite_ore.json b/src/main/resources/data/create/recipes/compat/silentsgems/crushing/lepidolite_ore.json new file mode 100644 index 000000000..f8317bafd --- /dev/null +++ b/src/main/resources/data/create/recipes/compat/silentsgems/crushing/lepidolite_ore.json @@ -0,0 +1,32 @@ +{ + "conditions": [ + { + "type": "forge:mod_loaded", + "modid": "silentgems" + } + ], + "type": "create:crushing", + "group": "minecraft:misc", + "ingredients": [ + { + "item": "silentgems:lepidolite_ore" + } + ], + "results": [ + { + "item": "silentgems:lepidolite", + "count": 2 + }, + { + "item": "silentgems:lepidolite", + "count": 1, + "chance": 0.25 + }, + { + "item": "minecraft:netherrack", + "count": 1, + "chance": 0.12 + } + ], + "processingTime": 350 +} \ No newline at end of file diff --git a/src/main/resources/data/create/recipes/compat/silentsgems/crushing/malachite_ore.json b/src/main/resources/data/create/recipes/compat/silentsgems/crushing/malachite_ore.json new file mode 100644 index 000000000..26d2d80a0 --- /dev/null +++ b/src/main/resources/data/create/recipes/compat/silentsgems/crushing/malachite_ore.json @@ -0,0 +1,32 @@ +{ + "conditions": [ + { + "type": "forge:mod_loaded", + "modid": "silentgems" + } + ], + "type": "create:crushing", + "group": "minecraft:misc", + "ingredients": [ + { + "item": "silentgems:malachite_ore" + } + ], + "results": [ + { + "item": "silentgems:malachite", + "count": 2 + }, + { + "item": "silentgems:malachite", + "count": 1, + "chance": 0.25 + }, + { + "item": "minecraft:netherrack", + "count": 1, + "chance": 0.12 + } + ], + "processingTime": 350 +} \ No newline at end of file diff --git a/src/main/resources/data/create/recipes/compat/silentsgems/crushing/moldavite_ore.json b/src/main/resources/data/create/recipes/compat/silentsgems/crushing/moldavite_ore.json new file mode 100644 index 000000000..7203486eb --- /dev/null +++ b/src/main/resources/data/create/recipes/compat/silentsgems/crushing/moldavite_ore.json @@ -0,0 +1,32 @@ +{ + "conditions": [ + { + "type": "forge:mod_loaded", + "modid": "silentgems" + } + ], + "type": "create:crushing", + "group": "minecraft:misc", + "ingredients": [ + { + "item": "silentgems:moldavite_ore" + } + ], + "results": [ + { + "item": "silentgems:moldavite", + "count": 2 + }, + { + "item": "silentgems:moldavite", + "count": 1, + "chance": 0.25 + }, + { + "item": "minecraft:netherrack", + "count": 1, + "chance": 0.12 + } + ], + "processingTime": 350 +} \ No newline at end of file diff --git a/src/main/resources/data/create/recipes/compat/silentsgems/crushing/moonstone_ore.json b/src/main/resources/data/create/recipes/compat/silentsgems/crushing/moonstone_ore.json new file mode 100644 index 000000000..85bc1de35 --- /dev/null +++ b/src/main/resources/data/create/recipes/compat/silentsgems/crushing/moonstone_ore.json @@ -0,0 +1,32 @@ +{ + "conditions": [ + { + "type": "forge:mod_loaded", + "modid": "silentgems" + } + ], + "type": "create:crushing", + "group": "minecraft:misc", + "ingredients": [ + { + "item": "silentgems:moonstone_ore" + } + ], + "results": [ + { + "item": "silentgems:moonstone", + "count": 2 + }, + { + "item": "silentgems:moonstone", + "count": 1, + "chance": 0.25 + }, + { + "item": "minecraft:netherrack", + "count": 1, + "chance": 0.12 + } + ], + "processingTime": 350 +} \ No newline at end of file diff --git a/src/main/resources/data/create/recipes/compat/silentsgems/crushing/morganite_ore.json b/src/main/resources/data/create/recipes/compat/silentsgems/crushing/morganite_ore.json new file mode 100644 index 000000000..e9cecdd1c --- /dev/null +++ b/src/main/resources/data/create/recipes/compat/silentsgems/crushing/morganite_ore.json @@ -0,0 +1,32 @@ +{ + "conditions": [ + { + "type": "forge:mod_loaded", + "modid": "silentgems" + } + ], + "type": "create:crushing", + "group": "minecraft:misc", + "ingredients": [ + { + "item": "silentgems:morganite_ore" + } + ], + "results": [ + { + "item": "silentgems:morganite", + "count": 2 + }, + { + "item": "silentgems:morganite", + "count": 1, + "chance": 0.25 + }, + { + "item": "minecraft:cobblestone", + "count": 1, + "chance": 0.12 + } + ], + "processingTime": 350 +} \ No newline at end of file diff --git a/src/main/resources/data/create/recipes/compat/silentsgems/crushing/onyx_ore.json b/src/main/resources/data/create/recipes/compat/silentsgems/crushing/onyx_ore.json new file mode 100644 index 000000000..1ebfd9b6b --- /dev/null +++ b/src/main/resources/data/create/recipes/compat/silentsgems/crushing/onyx_ore.json @@ -0,0 +1,32 @@ +{ + "conditions": [ + { + "type": "forge:mod_loaded", + "modid": "silentgems" + } + ], + "type": "create:crushing", + "group": "minecraft:misc", + "ingredients": [ + { + "item": "silentgems:onyx_ore" + } + ], + "results": [ + { + "item": "silentgems:onyx", + "count": 2 + }, + { + "item": "silentgems:onyx", + "count": 1, + "chance": 0.25 + }, + { + "item": "minecraft:cobblestone", + "count": 1, + "chance": 0.12 + } + ], + "processingTime": 350 +} \ No newline at end of file diff --git a/src/main/resources/data/create/recipes/compat/silentsgems/crushing/opal_ore.json b/src/main/resources/data/create/recipes/compat/silentsgems/crushing/opal_ore.json new file mode 100644 index 000000000..93e602b0d --- /dev/null +++ b/src/main/resources/data/create/recipes/compat/silentsgems/crushing/opal_ore.json @@ -0,0 +1,32 @@ +{ + "conditions": [ + { + "type": "forge:mod_loaded", + "modid": "silentgems" + } + ], + "type": "create:crushing", + "group": "minecraft:misc", + "ingredients": [ + { + "item": "silentgems:opal_ore" + } + ], + "results": [ + { + "item": "silentgems:opal", + "count": 2 + }, + { + "item": "silentgems:opal", + "count": 1, + "chance": 0.25 + }, + { + "item": "minecraft:cobblestone", + "count": 1, + "chance": 0.12 + } + ], + "processingTime": 350 +} \ No newline at end of file diff --git a/src/main/resources/data/create/recipes/compat/silentsgems/crushing/pearl_ore.json b/src/main/resources/data/create/recipes/compat/silentsgems/crushing/pearl_ore.json new file mode 100644 index 000000000..6719c4c06 --- /dev/null +++ b/src/main/resources/data/create/recipes/compat/silentsgems/crushing/pearl_ore.json @@ -0,0 +1,32 @@ +{ + "conditions": [ + { + "type": "forge:mod_loaded", + "modid": "silentgems" + } + ], + "type": "create:crushing", + "group": "minecraft:misc", + "ingredients": [ + { + "item": "silentgems:pearl_ore" + } + ], + "results": [ + { + "item": "silentgems:pearl", + "count": 2 + }, + { + "item": "silentgems:pearl", + "count": 1, + "chance": 0.25 + }, + { + "item": "minecraft:end_stone", + "count": 1, + "chance": 0.12 + } + ], + "processingTime": 350 +} \ No newline at end of file diff --git a/src/main/resources/data/create/recipes/compat/silentsgems/crushing/peridot_ore.json b/src/main/resources/data/create/recipes/compat/silentsgems/crushing/peridot_ore.json new file mode 100644 index 000000000..1af300395 --- /dev/null +++ b/src/main/resources/data/create/recipes/compat/silentsgems/crushing/peridot_ore.json @@ -0,0 +1,32 @@ +{ + "conditions": [ + { + "type": "forge:mod_loaded", + "modid": "silentgems" + } + ], + "type": "create:crushing", + "group": "minecraft:misc", + "ingredients": [ + { + "item": "silentgems:peridot_ore" + } + ], + "results": [ + { + "item": "silentgems:peridot", + "count": 2 + }, + { + "item": "silentgems:peridot", + "count": 1, + "chance": 0.25 + }, + { + "item": "minecraft:cobblestone", + "count": 1, + "chance": 0.12 + } + ], + "processingTime": 350 +} \ No newline at end of file diff --git a/src/main/resources/data/create/recipes/compat/silentsgems/crushing/phosphophyllite_ore.json b/src/main/resources/data/create/recipes/compat/silentsgems/crushing/phosphophyllite_ore.json new file mode 100644 index 000000000..751094180 --- /dev/null +++ b/src/main/resources/data/create/recipes/compat/silentsgems/crushing/phosphophyllite_ore.json @@ -0,0 +1,32 @@ +{ + "conditions": [ + { + "type": "forge:mod_loaded", + "modid": "silentgems" + } + ], + "type": "create:crushing", + "group": "minecraft:misc", + "ingredients": [ + { + "item": "silentgems:phosphophyllite_ore" + } + ], + "results": [ + { + "item": "silentgems:phosphophyllite", + "count": 2 + }, + { + "item": "silentgems:phosphophyllite", + "count": 1, + "chance": 0.25 + }, + { + "item": "minecraft:cobblestone", + "count": 1, + "chance": 0.12 + } + ], + "processingTime": 350 +} \ No newline at end of file diff --git a/src/main/resources/data/create/recipes/compat/silentsgems/crushing/pyrope_ore.json b/src/main/resources/data/create/recipes/compat/silentsgems/crushing/pyrope_ore.json new file mode 100644 index 000000000..f38edf966 --- /dev/null +++ b/src/main/resources/data/create/recipes/compat/silentsgems/crushing/pyrope_ore.json @@ -0,0 +1,32 @@ +{ + "conditions": [ + { + "type": "forge:mod_loaded", + "modid": "silentgems" + } + ], + "type": "create:crushing", + "group": "minecraft:misc", + "ingredients": [ + { + "item": "silentgems:pyrope_ore" + } + ], + "results": [ + { + "item": "silentgems:pyrope", + "count": 2 + }, + { + "item": "silentgems:pyrope", + "count": 1, + "chance": 0.25 + }, + { + "item": "minecraft:end_stone", + "count": 1, + "chance": 0.12 + } + ], + "processingTime": 350 +} \ No newline at end of file diff --git a/src/main/resources/data/create/recipes/compat/silentsgems/crushing/rose_quartz_ore.json b/src/main/resources/data/create/recipes/compat/silentsgems/crushing/rose_quartz_ore.json new file mode 100644 index 000000000..70d02ae55 --- /dev/null +++ b/src/main/resources/data/create/recipes/compat/silentsgems/crushing/rose_quartz_ore.json @@ -0,0 +1,32 @@ +{ + "conditions": [ + { + "type": "forge:mod_loaded", + "modid": "silentgems" + } + ], + "type": "create:crushing", + "group": "minecraft:misc", + "ingredients": [ + { + "item": "silentgems:rose_quartz_ore" + } + ], + "results": [ + { + "item": "silentgems:rose_quartz", + "count": 2 + }, + { + "item": "silentgems:rose_quartz", + "count": 1, + "chance": 0.25 + }, + { + "item": "minecraft:end_stone", + "count": 1, + "chance": 0.12 + } + ], + "processingTime": 350 +} \ No newline at end of file diff --git a/src/main/resources/data/create/recipes/compat/silentsgems/crushing/ruby_ore.json b/src/main/resources/data/create/recipes/compat/silentsgems/crushing/ruby_ore.json new file mode 100644 index 000000000..d4c2d34e3 --- /dev/null +++ b/src/main/resources/data/create/recipes/compat/silentsgems/crushing/ruby_ore.json @@ -0,0 +1,32 @@ +{ + "conditions": [ + { + "type": "forge:mod_loaded", + "modid": "silentgems" + } + ], + "type": "create:crushing", + "group": "minecraft:misc", + "ingredients": [ + { + "item": "silentgems:ruby_ore" + } + ], + "results": [ + { + "item": "silentgems:ruby", + "count": 2 + }, + { + "item": "silentgems:ruby", + "count": 1, + "chance": 0.25 + }, + { + "item": "minecraft:cobblestone", + "count": 1, + "chance": 0.12 + } + ], + "processingTime": 350 +} \ No newline at end of file diff --git a/src/main/resources/data/create/recipes/compat/silentsgems/crushing/sapphire_ore.json b/src/main/resources/data/create/recipes/compat/silentsgems/crushing/sapphire_ore.json new file mode 100644 index 000000000..b078f9c00 --- /dev/null +++ b/src/main/resources/data/create/recipes/compat/silentsgems/crushing/sapphire_ore.json @@ -0,0 +1,32 @@ +{ + "conditions": [ + { + "type": "forge:mod_loaded", + "modid": "silentgems" + } + ], + "type": "create:crushing", + "group": "minecraft:misc", + "ingredients": [ + { + "item": "silentgems:sapphire_ore" + } + ], + "results": [ + { + "item": "silentgems:sapphire", + "count": 2 + }, + { + "item": "silentgems:sapphire", + "count": 1, + "chance": 0.25 + }, + { + "item": "minecraft:cobblestone", + "count": 1, + "chance": 0.12 + } + ], + "processingTime": 350 +} \ No newline at end of file diff --git a/src/main/resources/data/create/recipes/compat/silentsgems/crushing/sodalite_ore.json b/src/main/resources/data/create/recipes/compat/silentsgems/crushing/sodalite_ore.json new file mode 100644 index 000000000..6df2cb494 --- /dev/null +++ b/src/main/resources/data/create/recipes/compat/silentsgems/crushing/sodalite_ore.json @@ -0,0 +1,32 @@ +{ + "conditions": [ + { + "type": "forge:mod_loaded", + "modid": "silentgems" + } + ], + "type": "create:crushing", + "group": "minecraft:misc", + "ingredients": [ + { + "item": "silentgems:sodalite_ore" + } + ], + "results": [ + { + "item": "silentgems:sodalite", + "count": 2 + }, + { + "item": "silentgems:sodalite", + "count": 1, + "chance": 0.25 + }, + { + "item": "minecraft:end_stone", + "count": 1, + "chance": 0.12 + } + ], + "processingTime": 350 +} \ No newline at end of file diff --git a/src/main/resources/data/create/recipes/compat/silentsgems/crushing/spinel_ore.json b/src/main/resources/data/create/recipes/compat/silentsgems/crushing/spinel_ore.json new file mode 100644 index 000000000..bf897179a --- /dev/null +++ b/src/main/resources/data/create/recipes/compat/silentsgems/crushing/spinel_ore.json @@ -0,0 +1,32 @@ +{ + "conditions": [ + { + "type": "forge:mod_loaded", + "modid": "silentgems" + } + ], + "type": "create:crushing", + "group": "minecraft:misc", + "ingredients": [ + { + "item": "silentgems:spinel_ore" + } + ], + "results": [ + { + "item": "silentgems:spinel", + "count": 2 + }, + { + "item": "silentgems:spinel", + "count": 1, + "chance": 0.25 + }, + { + "item": "minecraft:netherrack", + "count": 1, + "chance": 0.12 + } + ], + "processingTime": 350 +} \ No newline at end of file diff --git a/src/main/resources/data/create/recipes/compat/silentsgems/crushing/sunstone_ore.json b/src/main/resources/data/create/recipes/compat/silentsgems/crushing/sunstone_ore.json new file mode 100644 index 000000000..6a47a78d0 --- /dev/null +++ b/src/main/resources/data/create/recipes/compat/silentsgems/crushing/sunstone_ore.json @@ -0,0 +1,32 @@ +{ + "conditions": [ + { + "type": "forge:mod_loaded", + "modid": "silentgems" + } + ], + "type": "create:crushing", + "group": "minecraft:misc", + "ingredients": [ + { + "item": "silentgems:sunstone_ore" + } + ], + "results": [ + { + "item": "silentgems:sunstone", + "count": 2 + }, + { + "item": "silentgems:sunstone", + "count": 1, + "chance": 0.25 + }, + { + "item": "minecraft:end_stone", + "count": 1, + "chance": 0.12 + } + ], + "processingTime": 350 +} \ No newline at end of file diff --git a/src/main/resources/data/create/recipes/compat/silentsgems/crushing/tanzanite_ore.json b/src/main/resources/data/create/recipes/compat/silentsgems/crushing/tanzanite_ore.json new file mode 100644 index 000000000..127826c3d --- /dev/null +++ b/src/main/resources/data/create/recipes/compat/silentsgems/crushing/tanzanite_ore.json @@ -0,0 +1,32 @@ +{ + "conditions": [ + { + "type": "forge:mod_loaded", + "modid": "silentgems" + } + ], + "type": "create:crushing", + "group": "minecraft:misc", + "ingredients": [ + { + "item": "silentgems:tanzanite_ore" + } + ], + "results": [ + { + "item": "silentgems:tanzanite", + "count": 2 + }, + { + "item": "silentgems:tanzanite", + "count": 1, + "chance": 0.25 + }, + { + "item": "minecraft:cobblestone", + "count": 1, + "chance": 0.12 + } + ], + "processingTime": 350 +} \ No newline at end of file diff --git a/src/main/resources/data/create/recipes/compat/silentsgems/crushing/tektite_ore.json b/src/main/resources/data/create/recipes/compat/silentsgems/crushing/tektite_ore.json new file mode 100644 index 000000000..365b1cbb7 --- /dev/null +++ b/src/main/resources/data/create/recipes/compat/silentsgems/crushing/tektite_ore.json @@ -0,0 +1,32 @@ +{ + "conditions": [ + { + "type": "forge:mod_loaded", + "modid": "silentgems" + } + ], + "type": "create:crushing", + "group": "minecraft:misc", + "ingredients": [ + { + "item": "silentgems:tektite_ore" + } + ], + "results": [ + { + "item": "silentgems:tektite", + "count": 2 + }, + { + "item": "silentgems:tektite", + "count": 1, + "chance": 0.25 + }, + { + "item": "minecraft:end_stone", + "count": 1, + "chance": 0.12 + } + ], + "processingTime": 350 +} \ No newline at end of file diff --git a/src/main/resources/data/create/recipes/compat/silentsgems/crushing/topaz_ore.json b/src/main/resources/data/create/recipes/compat/silentsgems/crushing/topaz_ore.json new file mode 100644 index 000000000..d95a63a7b --- /dev/null +++ b/src/main/resources/data/create/recipes/compat/silentsgems/crushing/topaz_ore.json @@ -0,0 +1,32 @@ +{ + "conditions": [ + { + "type": "forge:mod_loaded", + "modid": "silentgems" + } + ], + "type": "create:crushing", + "group": "minecraft:misc", + "ingredients": [ + { + "item": "silentgems:topaz_ore" + } + ], + "results": [ + { + "item": "silentgems:topaz", + "count": 2 + }, + { + "item": "silentgems:topaz", + "count": 1, + "chance": 0.25 + }, + { + "item": "minecraft:cobblestone", + "count": 1, + "chance": 0.12 + } + ], + "processingTime": 350 +} \ No newline at end of file diff --git a/src/main/resources/data/create/recipes/compat/silentsgems/crushing/turquoise_ore.json b/src/main/resources/data/create/recipes/compat/silentsgems/crushing/turquoise_ore.json new file mode 100644 index 000000000..c16c3ce75 --- /dev/null +++ b/src/main/resources/data/create/recipes/compat/silentsgems/crushing/turquoise_ore.json @@ -0,0 +1,32 @@ +{ + "conditions": [ + { + "type": "forge:mod_loaded", + "modid": "silentgems" + } + ], + "type": "create:crushing", + "group": "minecraft:misc", + "ingredients": [ + { + "item": "silentgems:turquoise_ore" + } + ], + "results": [ + { + "item": "silentgems:turquoise", + "count": 2 + }, + { + "item": "silentgems:turquoise", + "count": 1, + "chance": 0.25 + }, + { + "item": "minecraft:netherrack", + "count": 1, + "chance": 0.12 + } + ], + "processingTime": 350 +} \ No newline at end of file diff --git a/src/main/resources/data/create/recipes/compat/silentsgems/crushing/yellow_diamond_ore.json b/src/main/resources/data/create/recipes/compat/silentsgems/crushing/yellow_diamond_ore.json new file mode 100644 index 000000000..da9263d0a --- /dev/null +++ b/src/main/resources/data/create/recipes/compat/silentsgems/crushing/yellow_diamond_ore.json @@ -0,0 +1,32 @@ +{ + "conditions": [ + { + "type": "forge:mod_loaded", + "modid": "silentgems" + } + ], + "type": "create:crushing", + "group": "minecraft:misc", + "ingredients": [ + { + "item": "silentgems:yellow_diamond_ore" + } + ], + "results": [ + { + "item": "silentgems:yellow_diamond", + "count": 2 + }, + { + "item": "silentgems:yellow_diamond", + "count": 1, + "chance": 0.25 + }, + { + "item": "minecraft:end_stone", + "count": 1, + "chance": 0.12 + } + ], + "processingTime": 350 +} \ No newline at end of file diff --git a/src/main/resources/data/create/recipes/compat/silentsgems/crushing/zircon_ore.json b/src/main/resources/data/create/recipes/compat/silentsgems/crushing/zircon_ore.json new file mode 100644 index 000000000..9e3cd7b9f --- /dev/null +++ b/src/main/resources/data/create/recipes/compat/silentsgems/crushing/zircon_ore.json @@ -0,0 +1,32 @@ +{ + "conditions": [ + { + "type": "forge:mod_loaded", + "modid": "silentgems" + } + ], + "type": "create:crushing", + "group": "minecraft:misc", + "ingredients": [ + { + "item": "silentgems:zircon_ore" + } + ], + "results": [ + { + "item": "silentgems:zircon", + "count": 2 + }, + { + "item": "silentgems:zircon", + "count": 1, + "chance": 0.25 + }, + { + "item": "minecraft:netherrack", + "count": 1, + "chance": 0.12 + } + ], + "processingTime": 350 +} \ No newline at end of file diff --git a/src/main/resources/data/create/recipes/compat/simplefarming/crushing/sf_crush_barley.json b/src/main/resources/data/create/recipes/compat/simplefarming/crushing/sf_crush_barley.json new file mode 100644 index 000000000..0ce8af90a --- /dev/null +++ b/src/main/resources/data/create/recipes/compat/simplefarming/crushing/sf_crush_barley.json @@ -0,0 +1,32 @@ +{ + "conditions": [ + { + "type": "forge:mod_loaded", + "modid": "simplefarming" + } + ], + "type": "create:crushing", + "group": "minecraft:misc", + "ingredients": [ + { + "item": "simplefarming:barley" + } + ], + "results": [ + { + "item": "create:flour", + "count": 1 + }, + { + "item": "create:flour", + "count": 2, + "chance": 0.25 + }, + { + "item": "simplefarming:barley_seeds", + "count": 1, + "chance": 0.25 + } + ], + "processingTime": 150 +} \ No newline at end of file diff --git a/src/main/resources/data/create/recipes/compat/simplefarming/crushing/sf_crush_oat.json b/src/main/resources/data/create/recipes/compat/simplefarming/crushing/sf_crush_oat.json new file mode 100644 index 000000000..a49c764a2 --- /dev/null +++ b/src/main/resources/data/create/recipes/compat/simplefarming/crushing/sf_crush_oat.json @@ -0,0 +1,32 @@ +{ + "conditions": [ + { + "type": "forge:mod_loaded", + "modid": "simplefarming" + } + ], + "type": "create:crushing", + "group": "minecraft:misc", + "ingredients": [ + { + "item": "simplefarming:oat" + } + ], + "results": [ + { + "item": "create:flour", + "count": 1 + }, + { + "item": "create:flour", + "count": 2, + "chance": 0.25 + }, + { + "item": "simplefarming:oat_seeds", + "count": 1, + "chance": 0.25 + } + ], + "processingTime": 150 +} \ No newline at end of file diff --git a/src/main/resources/data/create/recipes/compat/simplefarming/crushing/sf_crush_rice.json b/src/main/resources/data/create/recipes/compat/simplefarming/crushing/sf_crush_rice.json new file mode 100644 index 000000000..afd51a250 --- /dev/null +++ b/src/main/resources/data/create/recipes/compat/simplefarming/crushing/sf_crush_rice.json @@ -0,0 +1,32 @@ +{ + "conditions": [ + { + "type": "forge:mod_loaded", + "modid": "simplefarming" + } + ], + "type": "create:crushing", + "group": "minecraft:misc", + "ingredients": [ + { + "item": "simplefarming:rice" + } + ], + "results": [ + { + "item": "create:flour", + "count": 1 + }, + { + "item": "create:flour", + "count": 2, + "chance": 0.25 + }, + { + "item": "simplefarming:rice_seeds", + "count": 1, + "chance": 0.25 + } + ], + "processingTime": 150 +} \ No newline at end of file diff --git a/src/main/resources/data/create/recipes/compat/simplefarming/crushing/sf_crush_rye.json b/src/main/resources/data/create/recipes/compat/simplefarming/crushing/sf_crush_rye.json new file mode 100644 index 000000000..81d6e6a1c --- /dev/null +++ b/src/main/resources/data/create/recipes/compat/simplefarming/crushing/sf_crush_rye.json @@ -0,0 +1,32 @@ +{ + "conditions": [ + { + "type": "forge:mod_loaded", + "modid": "simplefarming" + } + ], + "type": "create:crushing", + "group": "minecraft:misc", + "ingredients": [ + { + "item": "simplefarming:rye" + } + ], + "results": [ + { + "item": "create:flour", + "count": 1 + }, + { + "item": "create:flour", + "count": 2, + "chance": 0.25 + }, + { + "item": "simplefarming:rye_seeds", + "count": 1, + "chance": 0.25 + } + ], + "processingTime": 150 +} \ No newline at end of file diff --git a/src/main/resources/data/create/recipes/crushing/cactus.json b/src/main/resources/data/create/recipes/crushing/cactus.json index 4d5afcfd1..7bbe48aca 100644 --- a/src/main/resources/data/create/recipes/crushing/cactus.json +++ b/src/main/resources/data/create/recipes/crushing/cactus.json @@ -1,10 +1,20 @@ { - "type": "create:crushing", + "conditions": [ + { + "type": "forge:not", + "value": + { + "type": "forge:mod_loaded", + "modid": "quark" + } + } + ], + "type": "create:crushing", "ingredients": [ { "item": "minecraft:cactus" } - ], + ], "results": [ { "item": "minecraft:green_dye",