diff --git a/src/main/java/appeng/client/gui/AEBaseGui.java b/src/main/java/appeng/client/gui/AEBaseGui.java index c11aa1277..e0c952eb7 100644 --- a/src/main/java/appeng/client/gui/AEBaseGui.java +++ b/src/main/java/appeng/client/gui/AEBaseGui.java @@ -570,9 +570,9 @@ public abstract class AEBaseGui extends GuiContainer implements IMTModGuiContain stack = ((SlotME) slot).getAEStack(); if (stack != null - && action == InventoryAction.PICKUP_OR_SET_DOWN - && (stack.getStackSize() == 0 || GuiScreen.isAltKeyDown()) - && player.inventory.getItemStack().isEmpty()) { + && action == InventoryAction.PICKUP_OR_SET_DOWN + && (stack.getStackSize() == 0 || GuiScreen.isAltKeyDown()) + && player.inventory.getItemStack().isEmpty()) { action = InventoryAction.AUTO_CRAFT; } @@ -935,6 +935,7 @@ public abstract class AEBaseGui extends GuiContainer implements IMTModGuiContain } } else if (s instanceof AppEngSlot) { AppEngSlot appEngSlot = ((AppEngSlot) s); + if (s.getStack().isEmpty()) return; appEngSlot.setDisplay(true); appEngSlot.setReturnAsSingleStack(true); diff --git a/src/main/java/appeng/container/slot/SlotCraftingTerm.java b/src/main/java/appeng/container/slot/SlotCraftingTerm.java index d4df90188..e44f196cd 100644 --- a/src/main/java/appeng/container/slot/SlotCraftingTerm.java +++ b/src/main/java/appeng/container/slot/SlotCraftingTerm.java @@ -97,26 +97,9 @@ public class SlotCraftingTerm extends AppEngCraftingSlot { return is; } - // Don't render the item client-side if the item stage for it is not unlocked yet @Override - public ItemStack getStack() { - if (Platform.isClient() && Loader.isModLoaded("itemstages")) { - return itemstageStack(); - } - return super.getStack(); - } - - @SideOnly(Side.CLIENT) - ItemStack itemstageStack() { - final ItemStack item = super.getStack(); - final String itemsStage = ItemStages.getStage(item); - final String enchantStage = ItemStages.getEnchantStage(item); - final EntityPlayer player = Minecraft.getMinecraft().player; - - if ((itemsStage != null && !GameStageHelper.hasStage(player, itemsStage)) - || (enchantStage != null && !GameStageHelper.hasStage(player, enchantStage))) - return ItemStack.EMPTY; - return super.getStack(); + public boolean shouldDisplay() { + return !getStack().isEmpty(); } public void doClick(final InventoryAction action, final EntityPlayer who) { @@ -196,15 +179,6 @@ public class SlotCraftingTerm extends AppEngCraftingSlot { } } - if (Loader.isModLoaded("itemstages")) { - final String itemsStage = ItemStages.getStage(recipe.getRecipeOutput()); - final String enchantStage = ItemStages.getEnchantStage(recipe.getRecipeOutput()); - - if ((itemsStage != null && !GameStageHelper.hasStage(player, itemsStage)) - || (enchantStage != null && !GameStageHelper.hasStage(player, enchantStage))) - return null; - } - return recipe; }