org.bukkit.inventory.PlayerInventory#remove ( )源码实例Demo

下面列出了org.bukkit.inventory.PlayerInventory#remove ( ) 实例代码,或者点击链接到github查看源代码,也可以在右侧发表评论。

源代码1 项目: AnnihilationPro   文件: ShopMenuItem.java
@Override
public void onItemClick(ItemClickEvent event)
{
	Player player = event.getPlayer();
	PlayerInventory p = player.getInventory();
	if(p.containsAtLeast(new ItemStack(Material.GOLD_INGOT), cost))
	{
		int total = 0;
		for(ItemStack s : p.all(Material.GOLD_INGOT).values())
		{
			total += s.getAmount();
		}
		p.remove(Material.GOLD_INGOT);
		if(total-cost > 0)
			p.addItem(new ItemStack(Material.GOLD_INGOT,total-cost));
		p.addItem(product);
		player.sendMessage(Lang.PURCHASEDITEM.toString());
	}
	else player.sendMessage(Lang.COULDNOTPURCHASE.toString());
}
 
源代码2 项目: FastAsyncWorldedit   文件: BukkitPlayer.java
@Override
public void giveItem(int type, int amt) {
    final PlayerInventory inv = player.getInventory();
    final ItemStack newItem = new ItemStack(type, amt);
    if (type == WorldEdit.getInstance().getConfiguration().wandItem) {
        inv.remove(newItem);
    }
    final ItemStack item = player.getItemInHand();
    player.setItemInHand(newItem);
    if (item != null) {
        HashMap<Integer, ItemStack> overflow = inv.addItem(item);
        if (overflow != null && !overflow.isEmpty()) {
            TaskManager.IMP.sync(new RunnableVal<Object>() {
                @Override
                public void run(Object value) {
                    for (Map.Entry<Integer, ItemStack> entry : overflow.entrySet()) {
                        ItemStack stack = entry.getValue();
                        if (stack.getType() != Material.AIR && stack.getAmount() > 0) {
                            Item dropped = player.getWorld().dropItem(player.getLocation(), stack);
                            PlayerDropItemEvent event = new PlayerDropItemEvent(player, dropped);
                            if (event.isCancelled()) {
                                dropped.remove();
                            }
                        }
                    }
                }
            });
        }
    }
    player.updateInventory();
}
 
源代码3 项目: ArmorStandTools   文件: Main.java
private void removeAllTools(Player p) {
    PlayerInventory i = p.getInventory();
    for(ArmorStandTool t : ArmorStandTool.values()) {
        i.remove(t.getItem());
    }
}