Potential fix for tubes not obeying filters

This commit is contained in:
Brian Ricketts 2012-12-30 00:24:38 -06:00
parent d0131218d8
commit 788b325312
3 changed files with 21 additions and 3 deletions

View file

@ -41,7 +41,10 @@ public class RenderCrate extends RenderImprintable
{
if (tileEntity.getFilter() != null)
{
itemStack = ItemImprinter.getFilters(tileEntity.getFilter()).get(0).splitStack(0); // see if it has a filter instead
if (ItemImprinter.getFilters(tileEntity.getFilter()).size() > 0)
{
itemStack = ItemImprinter.getFilters(tileEntity.getFilter()).get(0).splitStack(0); // see if it has a filter instead
}
}
}

View file

@ -205,7 +205,10 @@ public class BlockCrate extends BlockMachine
boolean filterValid = true;
if (tileEntity.getFilter() != null)
{
filterValid = itemStack.isItemEqual(ItemImprinter.getFilters(tileEntity.getFilter()).get(0));
if (ItemImprinter.getFilters(tileEntity.getFilter()).size() > 0)
{
filterValid = itemStack.isItemEqual(ItemImprinter.getFilters(tileEntity.getFilter()).get(0));
}
}
if (containingStack.isStackable() && containingStack.isItemEqual(itemStack) && filterValid)
{
@ -230,7 +233,10 @@ public class BlockCrate extends BlockMachine
boolean filterValid = true;
if (tileEntity.getFilter() != null)
{
filterValid = itemStack.isItemEqual(ItemImprinter.getFilters(tileEntity.getFilter()).get(0));
if (ItemImprinter.getFilters(tileEntity.getFilter()).size() > 0)
{
filterValid = itemStack.isItemEqual(ItemImprinter.getFilters(tileEntity.getFilter()).get(0));
}
}
if (filterValid)
{

View file

@ -8,6 +8,7 @@ import net.minecraftforge.common.ForgeDirection;
import net.minecraftforge.common.ISidedInventory;
import universalelectricity.prefab.network.IPacketReceiver;
import universalelectricity.prefab.network.PacketManager;
import assemblyline.common.machine.imprinter.ItemImprinter;
import assemblyline.common.machine.imprinter.TileEntityImprintable;
public class TileEntityCrate extends TileEntityImprintable implements ISidedInventory, IPacketReceiver
@ -122,6 +123,14 @@ public class TileEntityCrate extends TileEntityImprintable implements ISidedInve
{
if (stack != null)
{
boolean filterValid = true;
if (getFilter() != null)
{
if (ItemImprinter.getFilters(getFilter()).size() > 0)
{
filterValid = stack.isItemEqual(ItemImprinter.getFilters(getFilter()).get(0));
}
}
if (stack.isStackable())
{
this.containingItems[slot] = stack;