- 1
- 0
@Override
public ItemStack transferStackInSlot(EntityPlayer player, int slotIndex) {
ItemStack itemstack = null;
Slot slot = (Slot) this.inventorySlots.get(slotIndex);
if (slot != null && slot.getHasStack()) {
ItemStack stackInSlot = slot.getStack();
itemstack = stackInSlot.copy();
// Проверяем тип предмета
Item itemInStack = stackInSlot.getItem();
if (itemInStack == Items.water_bucket) {
if (!this.mergeItemStack(stackInSlot, 0, 1, false)) {
return null;
}
} else if (itemInStack == ModItems.adamantite || itemInStack == ModItems.palladium || itemInStack == ModItems.cobalt) {
if (!this.mergeItemStack(stackInSlot, 2, 3, false)) {
return null;
}
} else {
return null;
}
if (stackInSlot.stackSize == 0) {
slot.putStack(null);
} else {
slot.onSlotChanged();
}
}
return itemstack;
}
Как это можно улучшить (конкретно у меня не забираются предметы с блока)
если что то такое добавлю то всё ломается
if (player.inventory.addItemStackToInventory(stackInSlot)) {
slot.putStack(null);
slot.onSlotChanged();
}