Before:
addSlotToContainer(new Slot(input, 0, 49, 47));
addSlotToContainer(new CustomSlot(output, 0, 107, 47));
After:
addSlotToContainer(new CustomSlot(output, 0, 107, 47));
addSlotToContainer(new Slot(input, 1, 49, 47));
also below should be something like this being a crafting table 2 slots one input one output
@Override
public ItemStack transferStackInSlot(EntityPlayer player, int slot){
ItemStack stack = null;
Slot slotObject = (Slot)this.inventorySlots.get(slot);
if (slotObject != null && slotObject.getHasStack())
{
ItemStack stackInSlot = slotObject.getStack();
stack = stackInSlot.copy();
if (slot == 0)
{
if (!this.mergeItemStack(stackInSlot, 2, 38, true))
{
return null;
}
slotObject.onSlotChange(stackInSlot, stack);
}
else if (slot >= 2 && slot < 29)
{
if (!this.mergeItemStack(stackInSlot, 29, 38, false))
{
return null;
}
}
else if (slot >= 29 && slot < 38)
{
if (!this.mergeItemStack(stackInSlot, 2, 29, false))
{
return null;
}
}
else if (!this.mergeItemStack(stackInSlot, 2, 38, false))
{
return null;
}
if (stackInSlot.stackSize == 0)
{
slotObject.putStack((ItemStack)null);
}
else
{
slotObject.onSlotChanged();
}
if (stackInSlot.stackSize == stack.stackSize)
{
return null;
}
slotObject.onPickupFromSlot(par1EntityPlayer, stackInSlot);
}
return stack;
}
just trying to be helpful