本文整理了Java中net.minecraft.inventory.Slot.isItemValid()
方法的一些代码示例,展示了Slot.isItemValid()
的具体用法。这些代码示例主要来源于Github
/Stackoverflow
/Maven
等平台,是从一些精选项目中提取出来的代码,具有较强的参考意义,能在一定程度帮忙到你。Slot.isItemValid()
方法的具体详情如下:
包路径:net.minecraft.inventory.Slot
类名称:Slot
方法名:isItemValid
暂无
代码示例来源:origin: Vazkii/Botania
@Nonnull
@Override
public ItemStack transferStackInSlot(EntityPlayer player, int slotIndex) {
ItemStack itemstack = ItemStack.EMPTY;
Slot slot = inventorySlots.get(slotIndex);
if(slot != null && slot.getHasStack()) {
ItemStack itemstack1 = slot.getStack();
itemstack = itemstack1.copy();
if(slotIndex < 16) {
if(!mergeItemStack(itemstack1, 16, 52, true))
return ItemStack.EMPTY;
} else {
int i = itemstack.getItemDamage();
if(i < 16) {
Slot slot1 = inventorySlots.get(i);
if(slot1.isItemValid(itemstack) && !mergeItemStack(itemstack1, i, i + 1, true))
return ItemStack.EMPTY;
}
}
if(itemstack1.isEmpty())
slot.putStack(ItemStack.EMPTY);
else slot.onSlotChanged();
if(itemstack1.getCount() == itemstack.getCount())
return ItemStack.EMPTY;
slot.onTake(player, itemstack1);
}
return itemstack;
}
代码示例来源:origin: Azanor/Baubles
@Override
public boolean isItemValid(ItemStack stack)
{
return super.isItemValid(stack);
}
@Override
代码示例来源:origin: PrinceOfAmber/Cyclic
@Override
public boolean isItemValid(@Nullable ItemStack stack) {
return super.isItemValid(stack);
}
代码示例来源:origin: PrinceOfAmber/Cyclic
@Override
public boolean isItemValid(@Nullable ItemStack stack) {
return super.isItemValid(stack);
}
代码示例来源:origin: Mine-and-blade-admin/Battlegear2
@Override
public boolean isItemValid(ItemStack stack) {
if (stack == null || stack.getItem() instanceof IHeraldryItem){
return super.isItemValid(stack);
}
return false;
}
}
代码示例来源:origin: SonarSonic/Calculator
@Override
public boolean isItemValid(ItemStack stack) {
if (type == null) {
return super.isItemValid(stack);
}
return !stack.isEmpty() && stack.getItem() != type;
}
代码示例来源:origin: Vazkii/Quark
@Override
public ItemStack insertItem(int slot, ItemStack stack, boolean simulate) {
Slot containerSlot = getSlot(slot);
if(containerSlot == null || !containerSlot.isItemValid(stack))
return stack;
return super.insertItem(slot, stack, simulate);
}
代码示例来源:origin: AppliedEnergistics/Applied-Energistics-2
if( !isB.isEmpty() && !a.isItemValid( isB ) )
if( !isA.isEmpty() && !b.isItemValid( isA ) )
代码示例来源:origin: AppliedEnergistics/Applied-Energistics-2
if( d.isItemValid( tis ) )
if( d.isItemValid( tis ) )
代码示例来源:origin: Alex-the-666/Ice_and_Fire
@Override
public boolean isItemValid(ItemStack stack) {
return super.isItemValid(stack) && !stack.isEmpty() && stack.getItem() != null && stack.getItem() instanceof ItemDragonArmor && stack.getMetadata() == 2;
}
});
代码示例来源:origin: Alex-the-666/Ice_and_Fire
@Override
public boolean isItemValid(ItemStack stack) {
return super.isItemValid(stack) && !stack.isEmpty() && stack.getItem() != null && stack.getItem() instanceof ItemDragonArmor && stack.getMetadata() == 1;
}
});
代码示例来源:origin: Alex-the-666/Ice_and_Fire
@Override
public boolean isItemValid(ItemStack stack) {
return super.isItemValid(stack) && !stack.isEmpty() && stack.getItem() != null && stack.getItem() instanceof ItemDragonArmor && stack.getMetadata() == 3;
}
});
代码示例来源:origin: Alex-the-666/Ice_and_Fire
@Override
public boolean isItemValid(ItemStack stack) {
return super.isItemValid(stack) && !stack.isEmpty() && stack.getItem() != null && stack.getItem() instanceof ItemDragonArmor && stack.getMetadata() == 0;
}
});
代码示例来源:origin: ForestryMC/ForestryMC
private static boolean shiftToMachineInventory(List<Slot> inventorySlots, ItemStack stackToShift, int numSlots, boolean mergeOnly) {
for (int machineIndex = playerInventorySize; machineIndex < numSlots; machineIndex++) {
Slot slot = inventorySlots.get(machineIndex);
if (mergeOnly && slot.getStack().isEmpty()) {
continue;
}
if (slot instanceof SlotForestry) {
SlotForestry slotForestry = (SlotForestry) slot;
if (!slotForestry.canShift() || slotForestry.isPhantom()) {
continue;
}
}
if (!slot.isItemValid(stackToShift)) {
continue;
}
if (shiftItemStackToRange(inventorySlots, stackToShift, machineIndex, 1)) {
return true;
}
}
return false;
}
}
代码示例来源:origin: AppliedEnergistics/Applied-Energistics-2
boolean isValid = s.isItemValid(
is ) || s instanceof SlotOutput || s instanceof AppEngCraftingSlot || s instanceof SlotDisabled || s instanceof SlotInaccessible || s instanceof SlotFake || s instanceof SlotRestrictedInput || s instanceof SlotDisconnected;
if( isValid && s instanceof SlotRestrictedInput )
代码示例来源:origin: Mine-and-blade-admin/Battlegear2
@Override
public boolean isItemValid(ItemStack par1ItemStack) {
if (par1ItemStack.isEmpty()) {
return super.isItemValid(ItemStack.EMPTY);
} else if(inventory instanceof InventoryPlayer){
if(super.isItemValid(par1ItemStack)) {
EntityPlayer player = ((InventoryPlayer) inventory).player;
final boolean inBattle = BattlegearUtils.isPlayerInBattlemode(player);
if(!inBattle){
((InventoryPlayer) inventory).currentItem += InventoryPlayerBattle.OFFSET;
}
boolean result;
if (mainHand) {
result = BattlegearUtils.isMainHand(par1ItemStack, partner.getStack(), player) && BattlegearUtils.isOffHand(partner.getStack(), par1ItemStack, player);
} else {
result = BattlegearUtils.isOffHand(par1ItemStack, partner.getStack() ,player) && BattlegearUtils.isMainHand(partner.getStack(), par1ItemStack, player);
}
if(!inBattle){
((InventoryPlayer) inventory).currentItem -= InventoryPlayerBattle.OFFSET;
}
return result;
}
}
return false;
}
}
代码示例来源:origin: Alex-the-666/Ice_and_Fire
@Override
public ItemStack transferStackInSlot(EntityPlayer playerIn, int index) {
ItemStack itemstack = ItemStack.EMPTY;
Slot slot = this.inventorySlots.get(index);
if (slot != null && slot.getHasStack()) {
ItemStack itemstack1 = slot.getStack();
itemstack = itemstack1.copy();
if (index < this.dragonInv.getSizeInventory()) {
if (!this.mergeItemStack(itemstack1, this.dragonInv.getSizeInventory(), this.inventorySlots.size(), true)) {
return ItemStack.EMPTY;
}
} else if (this.getSlot(1).isItemValid(itemstack1) && !this.getSlot(1).getHasStack()) {
if (!this.mergeItemStack(itemstack1, 1, 2, false)) {
return ItemStack.EMPTY;
}
} else if (this.getSlot(0).isItemValid(itemstack1)) {
if (!this.mergeItemStack(itemstack1, 0, 1, false)) {
return ItemStack.EMPTY;
}
} else if (this.dragonInv.getSizeInventory() <= 2 || !this.mergeItemStack(itemstack1, 2, this.dragonInv.getSizeInventory(), false)) {
return ItemStack.EMPTY;
}
if (itemstack1.isEmpty()) {
slot.putStack((ItemStack) ItemStack.EMPTY);
} else {
slot.onSlotChanged();
}
}
return itemstack;
}
代码示例来源:origin: ForestryMC/Binnie
GlStateManager.disableBlend();
GlStateManager.disableDepth();
if (!gui.getDraggedItem().isEmpty() && !this.slot.isItemValid(gui.getDraggedItem())) {
RenderUtil.drawGradientRect(new Area(1, 1, 16, 16), -1426089575, -1426089575);
} else {
代码示例来源:origin: Vazkii/Quark
if(inventorySlots.get(0).getHasStack() || !inventorySlots.get(0).isItemValid(itemstack1))
return ItemStack.EMPTY;
代码示例来源:origin: MatterOverdrive/MatterOverdrive-Legacy-Edition
public static ItemStack addItemInContainer(Container container, ItemStack itemStack) {
for (int i = 0; i < container.inventorySlots.size(); i++) {
if (container.getSlot(i).isItemValid(itemStack)) {
if (StackUtils.isNullOrEmpty(container.getSlot(i).getStack())) {
container.getSlot(i).putStack(itemStack);
if (itemStack.getCount() > itemStack.getMaxStackSize()) {
itemStack.setCount(itemStack.getMaxStackSize());
} else {
return null;
}
} else if (ItemStack.areItemStacksEqual(container.getSlot(i).getStack(), itemStack) && container.getSlot(i).getStack().getCount() < container.getSlot(i).getStack().getMaxStackSize()) {
int newStackSize = Math.min(container.getSlot(i).getStack().getCount() + itemStack.getCount(), container.getSlot(i).getStack().getMaxStackSize());
int leftStackSize = container.getSlot(i).getStack().getCount() + itemStack.getCount() - newStackSize;
container.getSlot(i).getStack().setCount(newStackSize);
if (leftStackSize <= 0) {
return null;
}
itemStack.setCount(newStackSize);
}
}
}
return itemStack;
}
内容来源于网络,如有侵权,请联系作者删除!