From 1fa1806c15028e8ce52f991f086affc88af8cce4 Mon Sep 17 00:00:00 2001 From: Gig Date: Mon, 8 Jun 2015 23:27:44 +0100 Subject: [PATCH] Added Isided for ImplosionCompressor --- .../tiles/TileImplosionCompressor.java | 25 ++++++++++++++++++- 1 file changed, 24 insertions(+), 1 deletion(-) diff --git a/src/main/java/techreborn/tiles/TileImplosionCompressor.java b/src/main/java/techreborn/tiles/TileImplosionCompressor.java index 6bc07acda..d02f8b6fe 100644 --- a/src/main/java/techreborn/tiles/TileImplosionCompressor.java +++ b/src/main/java/techreborn/tiles/TileImplosionCompressor.java @@ -5,15 +5,17 @@ import ic2.api.energy.tile.IEnergyTile; import ic2.api.tile.IWrenchable; import net.minecraft.entity.player.EntityPlayer; import net.minecraft.inventory.IInventory; +import net.minecraft.inventory.ISidedInventory; import net.minecraft.item.ItemStack; import net.minecraft.nbt.NBTTagCompound; +import net.minecraftforge.common.util.ForgeDirection; import techreborn.api.recipe.RecipeCrafter; import techreborn.init.ModBlocks; import techreborn.util.Inventory; import java.util.List; -public class TileImplosionCompressor extends TileMachineBase implements IWrenchable, IEnergyTile, IInventory { +public class TileImplosionCompressor extends TileMachineBase implements IWrenchable, IEnergyTile, IInventory, ISidedInventory { public int tickTime; public BasicSink energy; @@ -179,4 +181,25 @@ public class TileImplosionCompressor extends TileMachineBase implements IWrencha public boolean isItemValidForSlot(int slot, ItemStack stack) { return inventory.isItemValidForSlot(slot, stack); } + + // ISidedInventory + @Override + public int[] getAccessibleSlotsFromSide(int side) + { + return side == ForgeDirection.DOWN.ordinal() ? new int[]{0, 1, 2, 3} : new int[]{0, 1, 2, 3}; + } + + @Override + public boolean canInsertItem(int slotIndex, ItemStack itemStack, int side) + { + if (slotIndex >= 2) + return false; + return isItemValidForSlot(slotIndex, itemStack); + } + + @Override + public boolean canExtractItem(int slotIndex, ItemStack itemStack, int side) + { + return slotIndex == 2 || slotIndex == 3; + } }