我有点想制作一个插件...... 这是我的代码:
Player player = (Player)event.getPlayer();
ItemStack item = new ItemStack( /* player.getInventory() */ /* My problem here is how do i drop all items that or in my inventory (Some items might have enchantments!) */);
World world = player.getWorld();
world.dropItem(player.getLocation(), item);
有人知道如何删除库存中的所有商品吗?有些物品可能具有附魔,掉落时无法移除。
答案 0 :(得分:1)
如何迭代玩家库存并使用dropItemNaturally?
for (ItemStack itemStack : player.getInventory()) {
player.getWorld().dropItemNaturally(player.getLocation(), itemStack);
}
答案 1 :(得分:0)
代码
for (ItemStack itemStack : player.getInventory()) {
player.getWorld().dropItemNaturally(player.getLocation(), itemStack);
}
如果库存中没有任何项目,则可以返回null。 我推荐这个:
for (ItemStack itemStack : player.getInventory().getContents()) {
player.getWorld().dropItemNaturally(player.getLocation(), itemStack);
}
for (ItemStack itemStack : player.getInventory().getArmorContents()) {
player.getWorld().dropItemNaturally(player.getLocation(), itemStack);
}
在for循环中,它们只循环遍历清单中的项目而不是插槽。