From 89156d0d8485753e0cea91637fced1b66897a6df Mon Sep 17 00:00:00 2001 From: RecursivePineapple Date: Thu, 8 Aug 2024 09:16:57 -0400 Subject: Added the miniature wormhole generator (#2800) * Added the miniature wormhole generator * Updated structure & tooltip and added hatch hask * Fixed controller promotion not working * Initial work wormhole render + spotless + git strangeness * Fix wildcard imports * Removed redundant code + added more reasonable defaults * fix * sa * Remove debug print statements --------- Co-authored-by: Martin Robertz Co-authored-by: CookieBrigade <138534411+cookiebrigade@users.noreply.github.com> --- .../recipe/check/CheckRecipeResultRegistry.java | 1 + .../api/recipe/check/ResultMissingItem.java | 60 ++++++++++++++++++++++ 2 files changed, 61 insertions(+) create mode 100644 src/main/java/gregtech/api/recipe/check/ResultMissingItem.java (limited to 'src/main/java/gregtech/api/recipe') diff --git a/src/main/java/gregtech/api/recipe/check/CheckRecipeResultRegistry.java b/src/main/java/gregtech/api/recipe/check/CheckRecipeResultRegistry.java index 41ea858fec..5844a49180 100644 --- a/src/main/java/gregtech/api/recipe/check/CheckRecipeResultRegistry.java +++ b/src/main/java/gregtech/api/recipe/check/CheckRecipeResultRegistry.java @@ -155,5 +155,6 @@ public final class CheckRecipeResultRegistry { register(new ResultInsufficientMachineTier(0)); register(new ResultInsufficientStartupPower(0)); register(new ResultInsufficientStartupPowerBigInt(BigInteger.ZERO)); + register(new ResultMissingItem()); } } diff --git a/src/main/java/gregtech/api/recipe/check/ResultMissingItem.java b/src/main/java/gregtech/api/recipe/check/ResultMissingItem.java new file mode 100644 index 0000000000..868d664109 --- /dev/null +++ b/src/main/java/gregtech/api/recipe/check/ResultMissingItem.java @@ -0,0 +1,60 @@ +package gregtech.api.recipe.check; + +import java.util.Objects; + +import javax.annotation.Nonnull; +import javax.annotation.Nullable; + +import net.minecraft.client.resources.I18n; +import net.minecraft.item.ItemStack; +import net.minecraft.network.PacketBuffer; + +import cpw.mods.fml.common.network.ByteBufUtils; + +public class ResultMissingItem implements CheckRecipeResult { + + @Nullable + public ItemStack itemStack; + + public ResultMissingItem() { + + } + + public ResultMissingItem(@Nullable ItemStack itemStack) { + this.itemStack = itemStack; + } + + @Override + @Nonnull + public String getID() { + return "missing_item"; + } + + @Override + public boolean wasSuccessful() { + return false; + } + + @Override + @Nonnull + public String getDisplayString() { + return Objects.requireNonNull( + I18n.format("GT5U.gui.text.missing_item", itemStack != null ? itemStack.getDisplayName() : "null")); + } + + @Override + @Nonnull + public CheckRecipeResult newInstance() { + return new ResultMissingItem(itemStack != null ? itemStack.copy() : null); + } + + @Override + public void encode(@Nonnull PacketBuffer buffer) { + ByteBufUtils.writeItemStack(buffer, itemStack); + } + + @Override + public void decode(PacketBuffer buffer) { + this.itemStack = ByteBufUtils.readItemStack(buffer); + } +} -- cgit