Files
Chisel/src/main/java/com/cricketcraft/chisel/inventory/SlotChiselSelection.java
T

87 lines
3.0 KiB
Java
Raw Normal View History

2014-12-15 00:11:48 +00:00
package com.cricketcraft.chisel.inventory;
import com.cricketcraft.chisel.utils.General;
2014-10-27 16:26:14 -04:00
import net.minecraft.entity.player.EntityPlayer;
import net.minecraft.inventory.IInventory;
import net.minecraft.inventory.Slot;
import net.minecraft.item.ItemStack;
public class SlotChiselSelection extends Slot
{
public SlotChiselSelection(ContainerChisel container, InventoryChiselSelection inv, IInventory iinventory, int i, int j, int k)
{
super(iinventory, i, j, k);
this.container = container;
selInventory = inv;
}
@Override
public boolean isItemValid(ItemStack itemstack)
{
return false;
}
@Override
public boolean canTakeStack(EntityPlayer par1EntityPlayer)
{
if(container.finished) return false;
return par1EntityPlayer.inventory.getItemStack() == null;
}
@Override
public void onPickupFromSlot(EntityPlayer player, ItemStack itemstack)
{
ItemStack stack = player.inventory.getItemStack();
ItemStack crafted = selInventory.inventory[InventoryChiselSelection.normalSlots];
if(stack == null)
{
if(crafted != null && crafted.stackSize > 0) crafted.stackSize--;
if(crafted.stackSize == 0) crafted = null;
selInventory.setInventorySlotContents(InventoryChiselSelection.normalSlots, crafted);
} else
{
putStack(new ItemStack(itemstack.getItem(), itemstack.stackSize, itemstack.getItemDamage()));
player.inventory.setItemStack(null);
if(selInventory.inventory[InventoryChiselSelection.normalSlots] == null) return;
player.inventory.setItemStack(new ItemStack(itemstack.getItem(), selInventory.inventory[InventoryChiselSelection.normalSlots].stackSize, itemstack.getItemDamage()));
selInventory.setInventorySlotContents(InventoryChiselSelection.normalSlots, null);
}
selInventory.updateItems();
String sound = container.carving.getVariationSound(itemstack.getItem(), itemstack.getItemDamage());
player.worldObj.playSoundAtEntity(player, sound, 0.3f + 0.7f * General.rand.nextFloat(), 0.6f + 0.4f * General.rand.nextFloat());
/* ItemStack stack=player.inventory.getItemStack();
putStack(new ItemStack(itemstack.itemID, itemstack.stackSize, itemstack.getItemDamage()));
super.onPickupFromSlot(player,itemstack);
player.inventory.setItemStack(null);
if(selInventory.items[InventoryChiselSelection.normalSlots]==null) return;
player.inventory.setItemStack(new ItemStack(itemstack.itemID, selInventory.items[InventoryChiselSelection.normalSlots].stackSize, itemstack.getItemDamage()));
selInventory.setInventorySlotContents(InventoryChiselSelection.normalSlots,null);
selInventory.updateItems();
String sound=Carving.chisel.getVariationSound(itemstack.itemID, itemstack.getItemDamage());
player.worldObj.playSoundAtEntity(player, sound, 0.3f + 0.7f * General.rand.nextFloat(), 0.6f + 0.4f * General.rand.nextFloat());
*/
}
ContainerChisel container;
InventoryChiselSelection selInventory;
}