當前位置: 首頁>>代碼示例>>Java>>正文


Java ClickType.PICKUP_ALL屬性代碼示例

本文整理匯總了Java中net.minecraft.inventory.ClickType.PICKUP_ALL屬性的典型用法代碼示例。如果您正苦於以下問題:Java ClickType.PICKUP_ALL屬性的具體用法?Java ClickType.PICKUP_ALL怎麽用?Java ClickType.PICKUP_ALL使用的例子?那麽, 這裏精選的屬性代碼示例或許可以為您提供幫助。您也可以進一步了解該屬性所在net.minecraft.inventory.ClickType的用法示例。


在下文中一共展示了ClickType.PICKUP_ALL屬性的3個代碼示例,這些例子默認根據受歡迎程度排序。您可以為喜歡或者感覺有用的代碼點讚,您的評價將有助於係統推薦出更棒的Java代碼示例。

示例1: slotClick

@Override
public ItemStack slotClick(int slotId, int clickedButton, ClickType mode, EntityPlayer playerIn)
{
	if (slotId >= 0)
	{
		Slot s = getSlot(slotId);
		if (s instanceof EngramSlot && clickedButton == 0)
		{
			s.onPickupFromSlot(playerIn, playerIn.inventory.getCurrentItem());
			//TODO: check
			if (mode == ClickType.PICKUP_ALL && selected != null && ARKPlayer.get(playerIn).canLearnEngram(selected.getId())
					&& !playerIn.world.isRemote)
			{
				enchantItem(playerIn, 1);
			}
			return playerIn.inventory.getCurrentItem();
		}
	}
	return super.slotClick(slotId, clickedButton, mode, playerIn);
}
 
開發者ID:BubbleTrouble14,項目名稱:ARKCraft,代碼行數:20,代碼來源:ContainerEngram.java

示例2: slotClick

@Override
public ItemStack slotClick(int slotId, int dragType, ClickType clickTypeIn, EntityPlayer playerIn) {
	Slot slot = slotId > -1 && slotId < inventorySlots.size() ? inventorySlots.get(slotId) : null;
	if (slot instanceof SlotPhantom) {
		ItemStack s = TomsModUtils.copyItemStack(playerIn.inventory.getItemStack());
		if (!s.isEmpty()) {
			if (!ItemIgnoreList.accepts(s))
				s.setTagCompound(null);
			slot.putStack(dragType == 1 ? s.splitStack(1) : s);
		} else if (dragType != 1)
			slot.putStack(ItemStack.EMPTY);
		else if (dragType == 1) {
			if (!slot.getStack().isEmpty()) {
				int c = 1;
				if (clickTypeIn == ClickType.PICKUP_ALL)
					c = -1;
				else if (clickTypeIn == ClickType.QUICK_CRAFT)
					c = -phantomSlotChange;
				else if (clickTypeIn == ClickType.CLONE)
					c = phantomSlotChange;
				if (slot.getStack().getMaxStackSize() >= slot.getStack().getCount() + c && slot.getStack().getCount() + c > 0) {
					slot.getStack().grow(c);
				}
			}
		}
		return playerIn.inventory.getItemStack();
	} else if (slot instanceof ISlotClickListener) {
		((ISlotClickListener) slot).slotClick(slotId, dragType, clickTypeIn, playerIn);
		return super.slotClick(slotId, dragType, clickTypeIn, playerIn);
	} else
		return super.slotClick(slotId, dragType, clickTypeIn, playerIn);
}
 
開發者ID:tom5454,項目名稱:Toms-Mod,代碼行數:32,代碼來源:ContainerTomsMod.java

示例3: slotClick

@Override
public ItemStack slotClick(int slotId, int clickedButton, ClickType mode, EntityPlayer playerIn)
{
    if (slotId >= 0 && slotId < 9)
    {
        if (mode == ClickType.PICKUP || mode == ClickType.PICKUP_ALL ||
                mode == ClickType.SWAP) // 1 is shift-click
        {
            Slot slot = this.inventorySlots.get(slotId);

            ItemStack dropping = playerIn.inventory.getItemStack();

            if (dropping.getCount() > 0)
            {
                ItemStack copy = dropping.copy();
                copy.setCount(1);
                slot.putStack(copy);
            }
            else if (slot.getStack().getCount() > 0)
            {
                slot.putStack(ItemStack.EMPTY);
            }

            return slot.getStack().copy();
        }

        return ItemStack.EMPTY;
    }

    return super.slotClick(slotId, clickedButton, mode, playerIn);
}
 
開發者ID:gigaherz,項目名稱:Ender-Rift,代碼行數:31,代碼來源:ContainerInterface.java


注:本文中的net.minecraft.inventory.ClickType.PICKUP_ALL屬性示例由純淨天空整理自Github/MSDocs等開源代碼及文檔管理平台,相關代碼片段篩選自各路編程大神貢獻的開源項目,源碼版權歸原作者所有,傳播和使用請參考對應項目的License;未經允許,請勿轉載。