package com.flansmod.common.driveables.mechas;
import net.minecraft.inventory.IInventory;
import net.minecraft.inventory.Slot;
import net.minecraft.item.Item;
import net.minecraft.item.ItemStack;
import com.flansmod.common.guns.ItemGun;
public class SlotMecha extends Slot
{
private EnumMechaSlotType slotType;
public SlotMecha(IInventory inv, EnumMechaSlotType e, int x, int y)
{
super(inv, e.ordinal(), x, y);
slotType = e;
}
@Override
public boolean isItemValid(ItemStack stack)
{
if(stack == null || stack.getItem() == null)
return true;
EnumMechaItemType itemType = null;
Item item = stack.getItem();
if(item instanceof ItemGun && ((ItemGun)item).GetType().usableByMechas)
itemType = EnumMechaItemType.tool;
else if(item instanceof ItemMechaAddon)
itemType = ((ItemMechaAddon)item).type.type;
else return false;
return slotType.accepts(itemType);
}
@Override
public void putStack(ItemStack stack)
{
if(!isItemValid(stack))
return;
inventory.setInventorySlotContents(slotType.ordinal(), stack);
onSlotChanged();
}
}