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


Java ItemStack.setData方法代碼示例

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


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

示例1: getLeftOverItems

import org.bukkit.inventory.ItemStack; //導入方法依賴的package包/類
/**
 * {@inheritDoc}
 */
@Override
public List<? extends ItemStack> getLeftOverItems(CraftingInventory craftingInventory) {
    ItemStack[] matrix = craftingInventory.getMatrix();
    List<ItemStack> leftOver = new ArrayList<>(matrix.length);
    
    for (int i = 0; i < matrix.length; i++) {
        ItemStack itemStack = matrix[i];
        
        if (InventoryUtils.isEmptyStack(itemStack)) {
            leftOver.add(null);
            continue;
        }
        
        ItemStack clone = itemStack.clone();
        MaterialData craftingResult = InventoryUtils.getSingleIngredientResult(itemStack.getData());
        if (craftingResult.getItemType() != Material.AIR) {
            clone.setData(craftingResult);
            leftOver.add(clone);           
            continue;
        }
    }
    
    craftingInventory.setContents(leftOver.toArray(new ItemStack[matrix.length]));
    return leftOver;
}
 
開發者ID:Jannyboy11,項目名稱:CustomRecipes,代碼行數:29,代碼來源:SimpleCraftingRecipe.java

示例2: buildClicker

import org.bukkit.inventory.ItemStack; //導入方法依賴的package包/類
private static MenuGeneralRunnable<?> buildClicker(final ArrayList<ItemStack> selfItems, final TradeUpdater updater, final boolean isA) {
    return new MenuGeneralRunnable<PlayerDataRPG>() {
        @Override
        public void execute(Player p, PlayerDataRPG pd, ItemStack item, int slot) {
            if (plugin.getInstance(ItemManager.class).isSoulbound(item)) {
                p.sendMessage(ChatColor.RED + "You cannot trade Soulbound items!");
                return;
            }
            if (isA ? updater.aSlots.contains(slot) : updater.bSlots.contains(slot)) {
                p.sendMessage(ChatColor.RED + "You have already offered this item.");
                return;
            }
            if (isA)
                updater.aSlots.add(slot);
            else
                updater.bSlots.add(slot);
            ItemStack displayItem = item.clone();
            displayItem.setDurability(item.getDurability());
            displayItem.setData(item.getData());
            ArrayList<String> lore = new ArrayList<String>();
            if (item.hasItemMeta() && item.getItemMeta().hasLore())
                lore.addAll(item.getItemMeta().getLore());
            ItemMeta im = displayItem.getItemMeta();
            lore.add("");
            lore.add(ChatColor.YELLOW + "Offered by: " + ChatColor.GREEN + p.getName());
            im.setLore(lore);
            displayItem.setItemMeta(im);
            selfItems.add(displayItem);
            updater.resetStates();
            updater.update();
        }
    };
}
 
開發者ID:edasaki,項目名稱:ZentrelaRPG,代碼行數:34,代碼來源:TradeManager.java

示例3: build

import org.bukkit.inventory.ItemStack; //導入方法依賴的package包/類
/**
 * Creates a new itemStack from this
 *
 * @return itemStack
 */
public ItemStack build() {
    final ItemStack itemStack = new ItemStack(this.getType());
    itemStack.setAmount(this.getAmount());
    itemStack.setData(this.getData());
    itemStack.setDurability(this.getDurability());
    itemStack.setItemMeta(this.getItemMeta());
    return itemStack;
}
 
開發者ID:Shynixn,項目名稱:BlockBall,代碼行數:14,代碼來源:ItemStackBuilder.java

示例4: build

import org.bukkit.inventory.ItemStack; //導入方法依賴的package包/類
public ItemStack build() {
    ItemStack itemStack = new ItemStack(material, amount, durability);
    itemProcessors.process(itemStack);
    ItemMeta meta = itemStack.getItemMeta();
    metaProcessors.process(meta);
    itemStack.setItemMeta(meta);
    itemStack.setData(data);
    return itemStack;
}
 
開發者ID:EntryPointKR,項目名稱:MCLibrary,代碼行數:10,代碼來源:ItemBuilder.java


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